定义一个文件输入流,使用read(byte[] b)方法,将a.txt文件中的内容打印出来

来源:互联网 发布:淘宝店公告栏在哪里写 编辑:程序博客网 时间:2024/04/28 07:09
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.txtFileInputStream fis = new FileInputStream("a.txt");//2,创建内存输出流,将读到的数据写到内存的输出流中ByteArrayOutputStream baos = new ByteArrayOutputStream();//3,创建字节数组,长度为5byte[] 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();}}

0 0
原创粉丝点击