2
String str;
String path = "E:/progs/a.txt";

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
PrintWriter pw = new PrintWriter(path);

while(true)
{
    System.out.print("Enter the words : ");
    str = br.readLine();
    if(str.equalsIgnoreCase("exit"))
        break;
    else
        pw.println(str);
}

我输入的文本没有写入路径中指定的文件名 a.txt....我可以知道原因吗

4

3 回答 3

3

你没有关闭PrintWriter。使用pw.close();.

始终确保在打开文件时关闭文件。

它是一种更好的使用方式

finally

这样你就可以最后关闭所有打开的文件..

例如:

finally

{ pw.close(); }

于 2013-01-07T15:03:53.637 回答
0

您必须关闭 PrintWriter 并考虑为 if-else 使用大括号。

   else {
    pw.println(str);
    pw.close();
   }
于 2013-01-07T15:04:54.427 回答
0

您需要将数据刷新到文件

else {
pw.println(str);
pw.flush();
pw.close();

}

于 2013-01-07T15:18:32.620 回答