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(); }}
新闻热点
疑难解答