从InputStreamReader的构造函数中看到,参数为InputStream和编码方式,可以看出,当要指定编码方式时,必须使用InputStreamReader类;而FileReader构造函数的参数与FileInputStream同,为File对象或表示path的String,可以看出,当要根据File对象或者String读取一个文件时,用FileReader;我想FileReader子类的作用也就在于这个小分工吧。 3...
由输出结果可以看出FileInputStream并没有重写markSupported()方法,所以FileInputStream并不支持mark()和reset()方法,读取文件时无法标记读取位置和重置. 2.FileReader FileReader直接继承自InputStreamReader,而InputStreamReader是一个输入转换流,将输入字节转换为字符形式,这说明FileReader底层还是依靠字节流读取,只不过java帮...
2.2)通过指定的字符串参数来创建File类对象,而后再与File对象所代表的实际路径建立链接创建FileInputStream流对象 public FileInputStream(String name) throws FileNotFoundException 1. 通过查看源码,发现该构造方法等于是在第一个构造方法的基础上进行延伸的,因此规则也和第一个构造方法一致 public FileInputStream(Stri...
该类与它的父类InputStreamReader的主要不同在于构造函数,从InputStreamReader的构造函数中看到,参数为InputStream和编码方式,可以看出,当要指定编码方式时,必须使用InputStreamReader类; 而FileReader构造函数的参数与FileInputStream同,为File对象或表示path的String,可以看出,当要根据File对象或者String读取一个文件时,用F...
FileInputStream 类以二进制输入 / 输出, I/O 速度快且效率搞,但是它的 read ()方法读到的是一个字节,很不利于人们阅读。 而 FileReader 类弥补了这个缺陷,可以以文本格式输入/ 输出,非常方便;比如可以使用 while((ch = filereader.read())!=-1 ) 循环来读取文件;可以使用BufferedReader 的 readLine() 方...
FileInputStream:适用于读取任意类型的文件(包括文本和二进制文件),按字节读取。 Reader 类(如 FileReader):专门用于读取字符数据,能够处理字符编码,适用于读取文本文件。 所以,如果你的目标是读取文本文件并正确处理其中的字符编码,使用 Reader 类(例如 FileReader)会是更好的选择。而 FileInputStream 更多用于那些不需...
2) 与InputStreamReader类的区别: 该类与它的父类InputStreamReader的主要不同在于构造函数,从InputStreamReader的构造函数中看到,参数为InputStream和编码方式,可以看出,当要指定编码方式时,必须使用InputStreamReader类; 而FileReader构造函数的参数与FileInputStream同,为File对象或表示path的String,可以看出,当要根据Fil...
FileReader:是InputStreamReader的子类,其和父类主要区别在构造函数不同,当根据File或String读取文件时用FileReader。 三、要点 1、InputStreamReader ,它是字节转换为字符的桥梁。 你可以在构造器重指定编码的方式,如果不指定的话将采用底层操作系统的默认编码方式,例如GBK等。
InputStream、OutputStream 操作的是字节 Reader、Writer 操作的是字符 相同: 都是抽象类 FileInputStream与FileReader区别 FileInputStream是字节流,FileReader是字符流,用字节流读取中文的时候,可能会出现乱码,而用字符流则不会出现乱码,而且用字符流读取的速度比字节流要快; ...
1、FileInputStream / FileOutputStream:用于读取和写入二进制文件(如图像、视频等)。 2、FileReader / FileWriter:用于读取和写入文本文件。 3、BufferedReader / BufferedWriter:用于缓冲读取和写入文本文件,提高读写效率。 4、InputStreamReader / OutputStreamWriter:用于读取和写入文本文件,并支持指定字符编码。