2

テキストファイルを読み取って(サイズを気にせず、適度に小さいのでjava.io問題ありません)、その内容をJTextAreaforにダンプして表示するのが最も効率的な方法であることに興味があります。

たとえば、ファイル全体を1つの文字列で消費し、それJTextArea.setTextを表示するために使用できますか、それとも行ごとまたはバイト配列を読み取り、それらをStringBufferに入力して、テキスト領域をそれに設定する必要がありますか?

ありがとう

4

2 に答える 2

7

を使用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();
    }
}
于 2012-11-01T23:08:07.290 に答える
3

ファイルの内容全体を読み取るのではなく、JTextAreaコンポーネントが a を使用しReaderてファイルの を読み取れるようにすることができInputStreamます。

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