У меня проблема с чтением файла с помощью StreamReader
, а line != null
добавить к textBox1
Код:
using(StreamReader reader = new StreamReader("lastupdate.txt"))
{
string line;
while((line = reader.ReadLine()) != null)
{
textBox1.Text = line;
}
reader.Close();
}
Это не работает, и я не знаю, почему. Я пытался использовать using StreamReader
, я загружаю файл с URL-адреса и вижу в папке, что файл загружен. lastupdate.txt
имеет размер 1 КБ.
Это мой текущий рабочий код с MessageBox
. Если я уберу MessageBox
, код не сработает. Нужно какое-то ожидание или я не знаю:
WebClient client = new WebClient();
client.DownloadFileAsync(new Uri(Settings.Default.patchCheck), "lastupdate.txt"); // ok
if(File.Exists("lastupdate.txt"))
{
MessageBox.Show("Lastupdate.txt exist");
using(StreamReader reader = new StreamReader("lastupdate.txt"))
{
string line;
while((line = reader.ReadLine()) != null)
{
textBox1.Text = line;
MessageBox.Show(line.ToString());
}
reader.Close();
}
File.Delete("lastupdate.txt");
}
Async
, остальная часть кода будет пропущена.if(File.Exists)
будет ложным, потому что файла еще нет или он используется потоком загрузки. Вот почему вы ничего не получаете в своем текстовом поле. Вам нужно настроить обработчик событий для работы с запросом Ansyc. Когда вы приостанавливаете выполнение своего кода с помощью MessageBox, вы разрешаете полную загрузку файла. - person CaptainBli   schedule 20.08.2014while (!reader.EndOfStream)
и после этого присвоить значениеReadLine()
? - person Muflix   schedule 02.12.2016