获取PrintWriter写入的文件

时间:2015-04-27 10:06:48

标签: java file printwriter

如何获取PrintWriter对象正在写入的文件的名称?

PrintWriter myPrintWriter = new PrintWriter(fileName, "UTF-8");

我需要fileName参数。

2 个答案:

答案 0 :(得分:1)

你不能 - 甚至可能不写文件,例如

StringWriter stringWriter = new StringWriter();
PrinterWriter printWriter = new PrintWriter(stringWriter);

如果您需要此信息,您可能会创建一个PrintWriter的子类,它会记住(并公开)它写入的文件...但通常需要这样做表明您&# 39;最好先看看你的设计并重新考虑它。 (就我个人而言,我倾向于避免使用PrintWriter,因为我不喜欢被吞下的异常,但那是另一回事。)

答案 1 :(得分:0)

如果你写信给文件,你可以使用这段代码:

File f = new File("some_file.txt");
f.createNewFile();
PrintWriter writer = new PrintWriter(new FileWriter(f));

或者你可以使用文件名:

PrintWriter myPrintWriter = new PrintWriter("some_file.txt", "UTF-8");

如果该文件存在,那么它将被截断为零大小;否则,将创建一个新文件。