我很好奇读取文本文件的最有效方法(不必担心大小,它很小,所以java.io
很好),然后将其内容转储到JTextArea
中展示。
例如。我可以某种程度上以单个字符串的方式消耗整个文件,然后使用JTextArea.setText
显示它,或者我应该按行或字节数组读取并将其填充到StringBuffer中,然后将文本区域设置为?
谢谢
您可以使用JTextComponent.read(Reader, Object)
并将其传递给FileReader
。只是这样做:
Java 7 - Try-Resource Block
try (FileReader reader = new FileReader("myfile.txt")) {
textArea.read(reader, null);
}
Java 6 - 尝试block
FileReader reader = null;
try {
reader = new FileReader("myfile.txt");
textArea.read(reader, null);
} finally {
if (reader != null) {
reader.close();
}
}
而不是读取文件的完整内容,您可以允许JTextArea
组件使用Reader
读取文件的InputStream
:
FileReader fr = new FileReader(fileName);
textArea.read(fr, null);