2

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

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

谢谢

4

2 回答 2

7

您可以使用JTextComponent.read(Reader, Object)并将其传递给FileReader. 只需这样做:

Java 7 -- 尝试资源块

try (FileReader reader = new FileReader("myfile.txt")) {
    textArea.read(reader, null);
}

Java 6 ——try-finally 块

FileReader reader = null;
try {
    reader = new FileReader("myfile.txt");
    textArea.read(reader, null);
} finally {
    if (reader != null) {
        reader.close();
    }
}
于 2012-11-01T23:08:07.290 回答
3

JTextArea您可以允许组件使用 aReader来读取文件,而不是读取文件的全部内容InputStream

FileReader fr = new FileReader(fileName);
textArea.read(fr, null);
于 2012-11-01T23:08:46.040 回答