Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рокот
3 / 3 / 0
Регистрация: 23.10.2017
Сообщений: 34
1

Чтение из закрытого TextReader невозможно

28.10.2017, 18:46. Просмотров 205. Ответов 3
Метки нет (Все метки)

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
 class Global
 {
     static public int MAX_SKILL;
     static public StreamReader fp;
 }
 
 
class TableSave
{
    static public void Cargar_Skills()
    {
        string word;
 
 
        FileStream fp_read = new FileStream(Const.ROM_DIR + Const.SKILL_FILE, FileMode.Open, FileAccess.Read);
        Global.fp = new StreamReader(fp_read);
 
        word = _db.Fread_Word(Global.fp);//Read one word
    }
}
 
class _db
{
    static public string Fread_Word(StreamReader fp)
    {
        string word = "";
        char cEnd;
 
        do
        {
            cEnd = (char)fp.Read();
        }
        while (cEnd.Equals(' '));
 
        return word;
    }
}
При исполнении программы в 31 строке выдаёт ошибку: System.ObjectDisposedException: "Чтение из закрытого TextReader невозможно."
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.10.2017, 18:46
Ответы с готовыми решениями:

Чтение из закрытого TextReader невозможно
каждая строка в файле, начиная с 4, разбивается в массив. мне требуется...

Чтение из закрытого TextReader невозможно
while (sr.EndOfStream) { string tmp = sr.ReadLine(); stringxy=...

Чтение из закрытого TextReader невозможно.Что не так я делаю?
У меня есть кнопка по нажатию на которую должны обновиться слова в словаре...

Чтение после конца потока невозможно
Всем привет, есть функция, которая должна выводить данные из data файла,...

Чтение после конца потока невозможно
Ошибку выдаёт в 33й строке :cry: using System; using System.IO; ...

3
Shogun31337
536 / 516 / 222
Регистрация: 02.11.2016
Сообщений: 1,538
Завершенные тесты: 2
28.10.2017, 22:53 2
Попробуйте сделать класс Global публичным.
0
Usaga
Эксперт .NET
5129 / 3489 / 615
Регистрация: 21.01.2016
Сообщений: 13,857
Завершенные тесты: 2
29.10.2017, 06:40 3
Рокот, а кто будет проверять поток на наличие данных? Вы в цикле читаете из файла пока не кончатся пробелы, но что если файл нулевой длины или в нём одни только пробелы?
0
Рокот
3 / 3 / 0
Регистрация: 23.10.2017
Сообщений: 34
29.10.2017, 13:57  [ТС] 4
Shogun31337 - Объявление класса Global публичным ничего не изменило. Так же появляется ошибка.
Usaga - Код упрощен, все лишнее выкинуто. Для проверки поставил Console.WriteLine("{0}",cEnd), но
даже одного символа не считывается.

Добавлено через 21 минуту
Покопался в коде
C#
1
2
3
4
using (Global.fp)
            {
                Global.MAX_SKILL = Convert.ToInt32(Global.fp.ReadLine());
            }
Именно из-за этой вставки и происходит сбой.
Заменил на
C#
1
Global.MAX_SKILL = Convert.ToInt32(Global.fp.ReadLine());
и все заработало.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.10.2017, 13:57

Из StreamReader в TextReader
Стоит такая задача: есть поток StreamReader. Подразумевается, что в нём лежит...

Ошибка при чтении файла: Чтение после конца потока невозможно
Всем добрый вечер! Пытаюсь считать данные из rtf файла и загрузить их в excel...

Метод Peek() класс TextReader
В msdn сказано: "Целое число, представляющее следующий символ, чтение...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru