如何将String写入文本文件?

时间:2012-04-30 20:37:32

标签: java string text-files

我有一个String,用于存储几个文件的处理结果。如何将该String写入项目中的.txt文件?我有另一个String变量,它是.txt文件的所需名称。

3 个答案:

答案 0 :(得分:16)

试试这个:

//Put this at the top of the file:
import java.io.*;
import java.util.*;

BufferedWriter out = new BufferedWriter(new FileWriter("test.txt"));

//Add this to write a string to a file
//
try {

    out.write("aString\nthis is a\nttest");  //Replace with the string 
                                             //you are trying to write
}
catch (IOException e)
{
    System.out.println("Exception ");

}
finally
{
    out.close();
}

答案 1 :(得分:6)

你的意思是?

FileUtils.writeFile(new File(filename), textToWrite); 

FileUtils可在Commons IO中找到。

答案 2 :(得分:4)

使用基于字节的流创建的文件表示二进制格式的数据。使用基于字符的流创建的文件将数据表示为字符序列。文本文件可以由文本编辑器读取,而二进制文件由程序读取,该程序将数据转换为人类可读的格式。

FileReaderFileWriter执行基于字符的文件I / O.

如果您使用的是Java 7,则可以使用try-with-resources来大大缩短方法:

import java.io.PrintWriter;
public class Main {
    public static void main(String[] args) throws Exception {
        String str = "写字符串到文件"; // Chinese-character string
        try (PrintWriter out = new PrintWriter("output.txt", "UTF-8")) {
            out.write(str);
        }
    }
}

您可以使用Java的try-with-resources语句自动关闭资源(不再需要时必须关闭的对象)。您应该考虑资源类必须实现java.lang.AutoCloseable接口或其java.lang.Closeable子接口。