【发布时间】:2016-06-28 12:47:59
【问题描述】:
每次执行代码时,我都希望创建一个新的文本文件。
文本文件应称为 Person1。
下次执行代码时,文本文件应称为 Person2。
然后文本文件应该再次称为 Person3。等等等等……
目前,我可以创建一个名为“Person1”的文本文件,但无法创建另一个名为“Person2”的文本文件。
private int fileNumber = 1;
fileNumber = fileNumber++;
public static void main(String[] args) {
try {
FileWriter fw = new FileWriter("Person" + fileNumber + ".txt");
PrintWriter pw = new PrintWriter(fw);
pw.println("Hello you created a text file");
pw.close();
}
catch (IOException e)
{
System.out.println("Error!");
}
}
【问题讨论】:
-
下次执行代码时,文本文件应该被称为 Person2 你的意思是下次启动程序?
-
不,代码可以被不同的用户多次执行。 1 个用户可以创建多个文本文件,但文本文件需要不同的名称。
-
请将“e.printStackTrace()”放在catch块中,并将结果添加到问题中。有了这个,您可能就可以自己诊断问题了。
-
您的代码错误地假设值
fileNumber将在每次有人运行程序时继续存在。情况并非如此:每次运行程序时,由同一用户或不同用户运行,变量fileNumber将重新启动为1。查看答案;他们检查文件 PersonX.txt (X=1,2,3...) 是否已经存在。
标签: java text-files filewriter printwriter