读取文本文件并将内容转储到JTextArea的最有效方法

amp*_*ent 2 java swing jtextarea jtextcomponent java-io

我很好奇最有效的方法是读取文本文件(不要担心大小,它相当小,所以java.io很好),然后将其内容转储到JTextArea显示器中.

例如,我可以以某种方式使用单个字符串中的整个文件,然后使用JTextArea.setText它来显示它,或者我应该逐行读取或字节数组并将它们填充到StringBuffer中,然后将文本区域设置为?

谢谢

Bri*_*ian 7

你可以使用JTextComponent.read(Reader, Object)并传递它FileReader.这样做:

Java 7 - try-resource块

try (FileReader reader = new FileReader("myfile.txt")) {
    textArea.read(reader, null);
}
Run Code Online (Sandbox Code Playgroud)

Java 6 - try-finally块

FileReader reader = null;
try {
    reader = new FileReader("myfile.txt");
    textArea.read(reader, null);
} finally {
    if (reader != null) {
        reader.close();
    }
}
Run Code Online (Sandbox Code Playgroud)