读取文本文件和将内容转储到JTextArea的最有效方法
我很好奇读取文本文件的最有效方法是什么(不要担心大小,它相当小,因此java.io
很好)然后将其内容转储到JTextArea
进行显示。
例如,我可以以某种方式使用单个字符串中的整个文件,然后使用JTextArea.setText
来显示它,或者我应该逐行读取或字节数组并将它们填充到StringBuffer中,然后将文本区域设置为?
谢谢
您可以使用JTextComponent.read(Reader, Object)
并将其传递给FileReader
。 这样做:
Java 7 – try-resource块
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(); } }
您可以允许JTextArea
组件使用Reader
来读取文件的InputStream
,而不是读取文件的完整内容:
FileReader fr = new FileReader(fileName); textArea.read(fr, null);