码迷,mamicode.com
首页 > 其他好文 > 详细

InputStreamReader 和FileReader的区别

时间:2016-04-17 23:23:16      阅读:179      评论:0      收藏:0      [点我收藏+]

标签:java   i/o   

InputStreamReader 和 BufferedReader 。其中最重要的类是 InputStreamReader ,它是字节转换为字符的桥梁。 你可以在构造器重指定编码的方式,如果不指定的话将采用底层操作系统的默认编码方式,例如 GBK 等。

FileReader 与 InputStreamReader 涉及编码转换 ( 指定编码方式或者采用 os 默认编码 ) ,可

能在不同的平台上出现乱码现象!而 FileInputStream 以二进制方式处理,不会出现乱码现象 .

 

FileInputStream字节流 是以一个一个字节来读。
FileReader字符流 是以一个一个字符来读取的。


InputStreamReader 字节转换为字符。


BufferedReader 读取大量字符流。

InputStream 一个字节一个字节读取,每次读取都执行一次I/O.

 

BufferedReader bufReader = null;
InputStreamReader isr = null;

FileReader fr = null;
try {
for(String fileName:fileNames){

   方法一:
    isr = new InputStreamReader(new FileInputStream("D:\test.txt"), "utf-8");
    bufReader = new BufferedReader(isr);

   方法二:

    fr = new FileReader("D:\test.txt");
    bufReader = new BufferedReader(fr);
    
    while (bufReader.ready()) {
     // 1. 得到每一行数据  
     String dataLine = bufReader.readLine();

     }

}


参考:http://blog.sina.com.cn/s/blog_6fda308501012mf0.html

http://www.360doc.com/content/12/1009/16/10630456_240458246.shtml

InputStreamReader 和FileReader的区别

标签:java   i/o   

原文地址:http://yangshaofeng.blog.51cto.com/6086883/1764828

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!