package cn.edu.jit.test;import java.io.ByteArrayOutputStream;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;/** * 面試題: * 定義一個文件輸入流,使用read(byte[] b)方法,將a.txt文件中的內容 * 打印出來(byte數組大小限制為5) * @author Rocky * */public class Test7 { /** * 分析: * 1,read(byte[] b)是字節輸入流的方法,創建的是FileInputStream,關聯a.txt * 2,創建內存輸出流,將讀到的數據寫到內存的輸出流中 * 3,創建字節數組,長度為5 * * 4,將內存輸出流的數據全部轉換為字符串打印 * 5,關閉輸入流 * @param args * @throws IOException */ public static void main(String[] args) throws IOException { //1,read(byte[] b)是字節輸入流的方法,創建的是FileInputStream,關聯a.txt FileInputStream fis = new FileInputStream("a.txt"); //2,創建內存輸出流,將讀到的數據寫到內存的輸出流中 ByteArrayOutputStream baos = new ByteArrayOutputStream(); //3,創建字節數組,長度為5 byte[] arr = new byte[5]; int len; while((len = fis.read(arr)) != -1) { baos.write(arr,0,len); } //4,將內存輸出流的數據全部轉換為字符串打印 /* * 即使沒有調用,也會默認會幫我們調用toString()方法 */ System.out.PRintln(baos.toString()); fis.close(); }}
新聞熱點
疑難解答