0

リストボックスに大きなテキスト ファイル (+/- 50.000 行) のコンテンツを読み込んで表示する最速の方法は何ですか?

私は使用しています: listBox1.DataSource = File.ReadAllLines(filePath);

そのような大きなファイルをリストボックスよりも速くロードできる別のコントロールはありますか (行を選択する可能性があります)?

別のスレッドまたはバックグラウンドワーカーで File.ReadAllLines(filePath) を実行するのが最善の方法ですか?

前もって感謝します!

更新 2: アプリケーションがファイルをロードしている場合、GUI がフリーズします。ファイルを別のスレッドにロードしても問題ありません。この問題を解決するには?

4

1 に答える 1

0

Windows フォームの RichTextBox コントロールは、プレーン テキスト、Unicode プレーン テキスト、またはリッチ テキスト形式 (RTF) ファイルを表示できます。そのためには、LoadFile メソッドを呼び出します。LoadFile メソッドを使用して、ストリームからデータをロードすることもできます。詳細については、LoadFile(Stream, RichTextBoxStreamType) を参照してください。

RichTextBox コントロールにファイルをロードするには

private void btnOpenFile_Click(object sender, System.EventArgs e)
{
   if(openFileDialog1.ShowDialog() == DialogResult.OK)
   {
     richTextBox1.LoadFile(openFileDialog1.FileName, RichTextBoxStreamType.RichText);
   }
}

上記の例では、Windows フォームのリッチ テキスト ボックス コントロールを利用しています。Web の例が必要な場合は、それも表示できます。

于 2013-01-14T21:05:51.607 に答える