C # richtextbox и чтение огромного файла - PullRequest
0 голосов
/ 02 ноября 2011

Я читаю огромный файл (сотни МБ) и отображаю его в поле richtext.моя программа зависнет при запуске.кто-нибудь может дать мне совет?это потому что я читаю файл?или это потому, что на richtextbox есть какой-то предел?Я попытался увеличить свойства maxLength 2147483647, но он говорит, что «значение свойства недопустимо, не является допустимым значением для INt32».Мое приложение 64-битное, так почему это происходит?и как я могу сделать Int32 быть 64?

            StreamReader sr = new StreamReader(file_name1);
            string myLine;
            while ((myLine = sr.ReadLine()) != null)
            {
                richTextBox1.AppendText(myLine+"\n");
                count_lines++;

            }
            sr.Close();
            textBox2.Text = count_lines.ToString(); ;

1 Ответ

0 голосов
/ 02 ноября 2011

(я отвечу на ваш комментарий в качестве ответа, чтобы улучшить читаемость)

Q: (Джон Раянн)

можно ли применить шаблон для richTextBox.LoadFile или File.ReadAllText ()? имеется в виду, что можно было бы получить только линии который имеет / который содержит определенную строку?

A:

StreamReader sr = new StreamReader("@c:\MyBigFile.log");

string line = sr.ReadLine();
while (line != null)
{
    if(line.Contains("Error"))
    {
        richTextBox.Text += line + Environment.NewLine;
    }

    line = sr.ReadLine();
}
sr.Close();
...