日期:2014-05-20  浏览次数:20911 次

PrintWriter和FileWriter在文件写入时有什么区别
为什么FileWriter里没有任何关于写的方法
这个方法存在的意义是什么呢 ?
谁能告诉一下啊 !


------解决方案--------------------
FileReader 和FileWriter都是继承父类的方法。他们本身的类中没有重写父类的任何方法。实际上就是等价于他们的父类outputStreamWriter,inputSteamReader
 至于它们存在的意义只是为了方便理解,一看就知道是用来写入字符文件的类!!!
------解决方案--------------------
java.io
Class FileWriter
java.lang.Object
|
+--java.io.Writer
|
+--java.io.OutputStreamWriter
|
+--java.io.FileWriter

public class FileWriter

Convenience class for writing character files. The constructors of this class assume that the default character encoding and the default byte-buffer size are acceptable. To specify these values yourself, construct an OutputStreamWriter on a FileOutputStream.



 java.io
Class PrintWriter
java.lang.Object
|
+--java.io.Writer
|
+--java.io.PrintWriter

public class PrintWriter

Print formatted representations of objects to a text-output stream. This class implements all of the print methods found in PrintStream. It does not contain methods for writing raw bytes, for which a program should use unencoded byte streams.

  

------解决方案--------------------
FileWriter类/FileReader类: 
用于对字符文件的读写的便捷的结点流类,
使用时最好用BufferedReader/BufferedWriter对其进行包装。

PrintStream类(如System.out):
格式化打印输出字节数据的流,该类提供的print[ln]()方法可格式化打印输出各种类型的数据(包括类对象),
它使用平台的默认字符编码将所有字符都转换为字节打印输出(写入)。

在需要写入字符而不是写入字节的情况下,应该使用PrintWriter类。