IO流之字节流

1 篇文章 0 订阅

IO流分为字节流和字符流,今天来写一下其中的字节流。
字节流的基类分别为InputStream和OutputStream,他们的子类都是由他们两个派生出来的,也是以他们为后缀结尾的,如:InputStream的子类FileInputStream。
1: FileInputStream:
构造方法:
FileInputStream(File file):读取文件中的数据;可以一个字节的读取,也可以一次读取一组数据
成员方法:
public int read():一次读取一个字节 public int read(byte[] b):一次读取一组字节
FileInputStream一次读取一个字节代码:

		File file1 = new File("b.txt");
		FileInputStream fis = new FileInputStream(file);
		int len1 = 0;
		while((len1=isr2.read())!=-1){
			System.out.print((char)len1);
		}

FileInputStream一次读取一组数据

		File file1 = new File("b.txt");
		FileInputStream fis = new FileInputStream(file);
		int len2 = 0;
		char[] chars = new  char[1024];
		while((len2=isr2.read(chars))!=-1){
			System.out.print(new String(chars,0,len2));
		}
		isr2.close();

FileOutputStream构造方法:
FileOutputStream(File file):读取文件中的数据;可以一个字节的写入,也可以一次写入一组数据
成员方法:
public void write(int b):一次写入一个字节 public void write(byte[] b):一次写入一组数据 public void write(byte[] b,int off,int len):自定义写入数据的长度 public void write(String str)一次写入一个字符串
一次写入一个数据
OutputStreamWriterosw2=newOutputStreamWriter(newFileOutputStream("a.txt"),"GBK"); osw.write(97);
一次写入一组数据
char[] chars = {'a','b','v','b'};*/ //osw.write(chars);
一次写入一个字符串
String str="zhangyan"; osw.write(str);
字节缓冲流:
BufferedOutputStream:字节缓冲输出流。
BufferedInputStream:字节缓冲输入流。
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("b.txt")); BufferedInputStream bis = new BufferedInputStream(new FileInputStream("a.txt")); 写入,读取的方法同上
总结:
数据写入成功后为什么要close();
答:因为close除了关闭流以外还有刷新的功能,不刷新数据只会在缓冲区,不会进入到目标文本、
如何实现数据的换行?
答:使用newLine();方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值