首页 > 学院 > 开发设计 > 正文

IO流_FileInputStream读取数据一次一个字节数组

2019-11-10 18:44:26
字体:
来源:转载
供稿:网友
package cn.itcast_02;import java.io.FileInputStream;import java.io.IOException;/* * 一次读取一个字节数组:int read(byte[] b) * 返回其实是实际读取取的字节个数。  */public class FileInputStreamDemo2 {	public static void main(String[] args) throws IOException {		// 创建字节输入流对象		// FileInputStream fis = new FileInputStream("fis2.txt");		FileInputStream fis = new FileInputStream("FileOutputStreamDemo.java");		// 读取数据		// 定义一个字节数组		// 第一次读取		// byte[] bys = new byte[5];		// int len = fis.read(bys);		// System.out.PRintln(len);		// System.out.println(new String(bys, 0, len));		//		// // 第二次读取		// len = fis.read(bys);		// System.out.println(len);		// System.out.println(new String(bys, 0, len));		//		// // 第三次读取		// len = fis.read(bys);		// System.out.println(len);		// System.out.println(new String(bys, 0, len));		//		// // 第四次读取		// len = fis.read(bys);		// System.out.println(len);		// System.out.println(new String(bys, 0, len));		// // 代码重复了,用循环改进		// // 但是我不知道循环条件		// len = fis.read(bys);		// System.err.println(len);		// len = fis.read(bys);		// System.err.println(len);		// 如果读取到的实际数据是-1,就说明没有数据了		// byte[] bys = new byte[115];		// int len = 0;		// while ((len = fis.read(bys)) != -1) {		// System.out.print(new String(bys, 0, len));		// // System.out.println(new String(bys));//千万要带上len的使用		// }		// 最终代码版		// 数组的长度一般是1024或者1024的整倍数		byte[] bys = new byte[1024];		int len = 0;		while ((len = fis.read(bys)) != -1) {			System.out.print(new String(bys, 0, len));		}		// 释放资源		fis.close();	}}
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表