我有两个实现,其中PrintStream
对象包装FileOutputStream
对象或File
对象。我对两者都做了同样的事情。如果一种方法不适用于写入,它们之间是否存在差异。
public class Varags {
public static void main(String[] args) throws FileNotFoundException{
OutputStream output = new FileOutputStream("Test.txt");
PrintStream p1=new PrintStream( output);
p1.println("trying");
PrintStream p=new PrintStream( new File("test2.txt"));
p.println("trying");
}
}
是否有其他写入文件的方法比这些更好?
由于
答案 0 :(得分:1)
据我所知,没有区别。根据Javadocs,File()版本无论如何都会创建一个OutputStreamWriter,并且只是为了方便而包含。
在许多情况下,使用Writer更适合纯文本输入。如果您正在使用原始字节数据,那么将需要一个Stream。
答案 1 :(得分:0)
PrintStream提供了一些将文本写入文件的便捷方法。要更好地控制将字符写入文件,请使用PrintWriter。
OutputStream用于将字节(纯数据,而不仅仅是文本)写入文件。