IO流

1,这些io流类在api里的继承图

FileReader

java.lang.Object

  java.io.Reader

      java.io.InputStreamReader

          java.io.FileReader

FileWriter

java.lang.Object

  java.io.Writer

      java.io.OutputStreamWriter

          java.io.FileWriter

java.io 
BufferedWriter

java.lang.Object

  java.io.Writer

      java.io.BufferedWriter

 

java.io 
OutputStreamWriter

java.lang.Object

  java.io.Writer

      java.io.OutputStreamWriter

 

FileOutputStream

java.lang.Object

  java.io.OutputStream

      java.io.FileOutputStream

 

 

2,用缓冲流包装那些低级流

 

//  如果需要包装的是字符流就能一步搞定   ,BufferedReader(Reader in) 

BufferedReader br = new BufferedReader(new FileReader(file));

BufferedWriter bw = new BufferedWriter(new FileWriter(file));

 

//如果包装的是字节流,需要用到InputStreamReader这个类,因为它是字节流通往字符流的桥梁InputStreamReader(InputStream in) 

reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));

writer = new BufferedWriter(new OutputStreamWriter(conn.getOutputStream()));

 

//缓冲字符流和缓冲字节流最重要的区别是,缓冲字符流有一个读一行和写一个空格符的方法,缓冲字节流没有

 

3,读写的格式

第一种:读字节数组

byte[] b = new byte[8192];

int len = 0;

//看用了多久

long before = System.currentTimeMillis();

while((len=fis.read(b))!=-1){

fos.write(b, 0, len);

}

 

第二种:一行行读

//如果读到null就不读了

String line = null;

while((line=br.readLine())!=null) {

System.out.println(line);

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值