StreamReader файлового потока имеет значение null сразу после создания экземпляра.C#

Место общения программистов C#
Ответить
Anonymous
 StreamReader файлового потока имеет значение null сразу после создания экземпляра.

Сообщение Anonymous »

Приложение C# для Windows 11, разработанное в VS 2022, считывает текстовый файл с помощью StreamReader. Имя файла, включая путь, — «filepath». Код включающего метода выглядит следующим образом:

Код: Выделить всё

private double ReadFile(filepath)
{
if (!filepath.Exists)
return;
if (filepath is open)
{
...Force user to close the file
}
using (StreamReader sr = new StreamReader(filepath))
{
string line;
line = sr.Readline();     // sr is null error occurs here
...
}
}

Эта ошибка только начала возникать, но раньше не возникала. Проверка параметров BaseStream показывает правильное имя и длину файла. Он также показывает, что параметры ReadTimeout и WriteTimeout вызывают исключения, но это связано с тем, что эти параметры не поддерживаются для файловых потоков. Может ли кто-нибудь объяснить, что вызывает это и, что более важно, как это можно исправить.
Я прочитал много сообщений о проблеме, которые появлялись в поиске Google. Кроме того, я перезагрузил компьютер и перезапустил VS и приложение без запуска других приложений, запускаемых пользователем. Результат был тот же. Компьютер новый, имеет очень быстрый процессор и 48 ГБ памяти.

Подробнее здесь: https://stackoverflow.com/questions/791 ... tantiation
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»