Java 使用PrintWriter将字符串打印到文本文件,但当我打开文本文件时,它是空的
我使用Java中的PrintWriter尝试将一些字符串写入文本文件,但是当我打开文本文件时,它是空的 这是我的密码:Java 使用PrintWriter将字符串打印到文本文件,但当我打开文本文件时,它是空的,java,file,text,printing,is-empty,Java,File,Text,Printing,Is Empty,我使用Java中的PrintWriter尝试将一些字符串写入文本文件,但是当我打开文本文件时,它是空的 这是我的密码: public void save(String fileName) throws FileNotFoundException{ PrintWriter out1 = new PrintWriter("aSB.txt"); out1.println("The Pupil's information is listed below:"); for (Pup
public void save(String fileName) throws FileNotFoundException{
PrintWriter out1 = new PrintWriter("aSB.txt");
out1.println("The Pupil's information is listed below:");
for (Pupil pup : Pupils) {
out1.println(pup.getFirstName() + " " + pup.getLastName());
}
out1.println("End");
out1.println("The Club's information is listed below:");
for (Club clu : Clubs) {
out1.println(clu.getName());
}
out1.close();
}
为什么文件名为空?尝试捕获FileNotFoundException并查看创建文件时是否出错。 还可以尝试捕获SecurityException。 如果没有,请尝试使用FileOutputStream。它真的很容易使用
祝你好运 正如凯文所说,可能是目录问题。尝试指定完整路径,看看会发生什么 比如:
PrintWriter pw = new PrintWriter("c:/asb.txt");
或者,请参见
很可能数组是空的检查aSB.txt文件,可能缺少文本。如何启动程序?也许你会惊讶于它认为它的工作目录是什么,文件应该在哪里。试着指定一个绝对路径(与上面Henrik所说的相关)。学生和俱乐部是空数组。在遍历它们之前打印它们的大小。你会看到它们是零。另外,请给出文件的完整路径:“C:\\aSB.txt”。文件可能未保存在您认为的位置。@EricLeschinski:即使数组为空,文件至少应包含“下面列出了学生/俱乐部的信息”和“结束”两行。是的,指定路径有效!我没有这样做的唯一原因是因为我在大Java中读到默认路径意味着它将在src中查找txt文件。谢谢你们的建议,伙计们!