java IO之InputStream

本文总结下InputStream 的基本用法:

1 FileInputStream 通过文件获取字节流

InputStream in = new FileInputStream("f:\\f.txt");
		while(in.available()>0){
			System.out.print((char)in.read());
		}
		in.close();

2 BufferedInputStream 为输入流提供缓冲功能

InputStream in = new FileInputStream("f:\\f.txt");
		BufferedInputStream bin = new BufferedInputStream(in);
		DataInputStream din = new DataInputStream(bin);
		while(din.available() > 0){
			System.out.println(din.readLine());
		}
		bin.close();
		in.close();
		din.close();

3 ByteArrayInputStream 用于向内存中写入或读出字节信息

String str = "helloworld\nhelloworld\nhelloworld\n";
		ByteArrayInputStream ais  = new ByteArrayInputStream(str.getBytes());
		while(ais.available() > 0){
			System.out.print((char)ais.read());
		}

4 StringBufferInputStream 已过时。此类读取的数据可以由字符串提供

String str = "helloworld\nhelloworld\nhelloworld\nhelloworld\nhelloworld\nhelloworld\nhelloworld\nhelloworld\n";
		StringBufferInputStream bis = new StringBufferInputStream(str);
		while(bis.available()>0){
			System.out.print((char)bis.read());
		}

5 LineNumberInputStream 输入流过滤器,提供追踪当前行号的功能

FileInputStream fis = new FileInputStream("f:\\f.txt");
		LineNumberInputStream lis = new LineNumberInputStream(fis);
		DataInputStream dis = new DataInputStream(lis);
		while(dis.available() > 0){
			System.out.println(lis.getLineNumber()+" : "+dis.readLine());
		}
		dis.close();
		lis.close();
		fis.close();


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值