JAVA FileInputStream 和 FileReader的区别
4月 15th, 2015,由 frank撰写
在写检索文件的函数时,发现读取文件有两种方式,一种是FileInputStream,另一种是FileReader。它们的本质区别就是FileReader读取的是字符数据,而FileInputStream读取的是字节数据,举个简单的例子就知道了,另外下面两篇文章讲这个不错,详细可以点进去看:
java读取文件
Java FileInputStream与FileReader的区别
[Java]读取文件方法大全
package pkg; import java.io.FileInputStream; import java.io.FileReader; import java.io.IOException; public class ReadFile { public static void main(String args[]) { // 例1 – 使用FileInputStream 读取文件内容 try (FileInputStream fis = new FileInputStream("test.log")) { int da = fis.read(); //读取流中的第一个字节数据 while (da != -1) { //未到达流的末尾 System.out.print(Integer.toHexString(da)+" "); da = fis.read(); //读取第二个字节数据 } System.out.println(); } catch (IOException e) { System.out.println("Failed to read binary data from File"); e.printStackTrace(); } // 例2 – Java中使用FileReader 读取文件数据 try (FileReader reader = new FileReader("test.log")) { int ch = reader.read(); while (ch != -1) { System.out.print((char) ch); ch = reader.read(); } } catch (IOException io) { System.out.println("Failed to read character data from File"); io.printStackTrace(); } } }
输出结果:
ef bb bf 68 65 6c 6c 6f 21 hello!本文出自 Frank's Blog
版权声明:
本文链接:JAVA FileInputStream 和 FileReader的区别
版权声明:本文为原创文章,仅代表个人观点,版权归 Frank Zhao 所有,转载时请注明本文出处及文章链接