关于 FileWriter 和 OutputStreamWriter

来源:百度知道 编辑:UC知道 时间:2024/05/15 04:33:22
FileWriter 也能输入 字符串 ,为什么要用 OutputStreamWriter呢?

什么情况用 OutputStreamWriter 而不用 FileWriter 呢?

望高手解答

万分感谢!!!
大哥,我也没多少分呀!!!

FileWriter 用来写入字符文件的便捷类,此类的构造方法假定默认字符编码和默认字节缓冲区大小都是可接受的

要自己指定这些值,可以先在 FileOutputStream 上构造一个 OutputStreamWriter
jdk上写的很清楚

FileReader 和FileWriter分别是InputStreamReader和outputStreamWriter的子类,他们的write和read方法其实是同一个方法。所以没有什么不一样。缓存的话可以考虑使用BufferedReader 和BufferedWriter 这个是带有缓存的封装。
FileReader,FileWriter 是读字符的,1个字符是2个字节,16位。
OutputStream ,InputStream是读字节的,1个字节是8位。
要是读汉字,一个汉字是2个字节,用InputStream读就把汉字活生生的拆一半了,自己可以写程序验证下。
字符流主要读文本比较效率。字节流主要读二进制文件,图片就是为了防止出现读取的单位放大,出现无法还原本程序的目的。

OutputStreamWriter不能直接读写文件啊。
而FileWriter就可以直接读写文件。
再有OutputStreamWriter可用于将字节流转换成字符流,而FileWriter就不能了!

分少