How do you write a String to a text file? [closed]

橙三吉。 提交于 2019-12-22 04:56:04

问题


I have a String that is storing the processed results for a few files. How do I write that String to a .txt file in my project? I have another String variable which is the desired name of the .txt file.


回答1:


Try this:

//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();
}



回答2:


Do you mean like?

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

FileUtils is available in Commons IO.




回答3:


Files that are created using byte-based streams represent data in binary format. Files created using character-based streams represent data as sequences of characters. Text files can be read by text editors, whereas binary files are read by a program that converts the data to a human-readable format.

Classes FileReader and FileWriter perform character-based file I/O.

If you are using Java 7, you can uses try-with-resources to shorten method considerably:

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);
        }
    }
}

You can use Java’s try-with-resources statement to automatically close resources (objects that must be closed when they are no longer needed). You should consider a resource class must implement the java.lang.AutoCloseable interface or its java.lang.Closeable subinterface.



来源:https://stackoverflow.com/questions/10390254/how-do-you-write-a-string-to-a-text-file

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!