如何使用Java将String保存到文本文件?

问题

在Java中,我有一个名为"text"的String变量中的文本字段的文本。

如何将"text"变量的内容保存到文件中?


#1 热门回答(591 赞)

如果你只是输出文本而不是任何二进制数据,则以下内容将起作用:

PrintWriter out = new PrintWriter("filename.txt");

然后,将你的String写入它,就像你对任何输出流一样:

out.println(text);

你需要像往常一样处理异常处理。写完后一定要打电话给out.close()

如果你使用的是Java 7或更高版本,则可以使用"try-with-resources statement",它将自动关闭你的PrintStream(如退出块),如下所示:

try (PrintWriter out = new PrintWriter("filename.txt")) {
    out.println(text);
}

你仍然需要在之前明确地抛出38286368。


#2 热门回答(217 赞)

Apache Commons IO包含一些很好的方法,特别是FileUtils包含以下方法:

static void writeStringToFile(File file, String data)

它允许你在一个方法调用中将文本写入文件:

FileUtils.writeStringToFile(new File("test.txt"), "Hello File");

你可能还需要考虑指定文件的编码。


#3 热门回答(75 赞)

看看Java File API

一个简单的例子:

try (PrintStream out = new PrintStream(new FileOutputStream("filename.txt"))) {
    out.print(text);
}