1. 程式人生 > >文件與IO-字節輸入/輸出

文件與IO-字節輸入/輸出

col byte write int amd 構建 內容 not fileinput

package IoDemo;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

/**
 * @Title:ByteStreamDemo
 * @Description:字節輸出流輸入流 :
 *                 1.輸出流:超類OutputStream,對文件的輸出流使用子類FileOutputStream
 *                 2.輸入流:超類InputStream,對文件的輸入流使用子類FileInputStream
 * 
@author Crazy-ZJ * @data 2017年9月22日上午10:29:53 * @book 瘋狂java講義(第三版): */ public class ByteStreamDemo { public static void in(){ //1.確定目標文件 File file = new File("F:\\test\\test.txt"); //2.構建一個文件輸入流對象 try { InputStream in = new FileInputStream(file);
byte[] bytes = new byte[1024]; StringBuilder buf = new StringBuilder(); int len = -1;//表示每次讀取的字節長度 //把數據讀入到數組中,並返回讀取的字節數,當不等於-1時,表示讀取到數據,等於-1表示文件已經讀取完 while((len = in.read(bytes))!=-1){//int read(byte[] b)從該輸入流讀取最多 b.length個字節的數據為字節數組 此方法返回的是一個長度,例如bytes只用了5 那麽len的值也就是5
//根據讀取到的字節數組,再轉換為字符串內容,添加到StringBuilder中 buf.append(new String(bytes)); } //打印讀取到的內容 System.out.println(buf); //關閉流 in.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } public static void out(){ //1.確定目標文件 File file = new File("F:\\test\\test.txt"); //2.構建一個文件輸出流對象 try{ OutputStream out = new FileOutputStream(file); //3.輸出的內容 String info = "東軟要垮了!!"; //4.把內容寫到文件中 out.write(info.getBytes()); //5.關閉流 out.close(); System.out.println("Write success..."); }catch (FileNotFoundException e){ e.printStackTrace(); }catch (IOException e){ e.printStackTrace(); } } public static void main(String[] args){ // out(); in(); } }

文件與IO-字節輸入/輸出