|
Модераторы: Partizan, gambit |
|
Ukrajinec |
|
||||||
Шустрый Профиль Группа: Участник Сообщений: 62 Регистрация: 6.4.2009 Репутация: нет Всего: нет |
Доброго времени суток!
Идея такова, читается файл построчно, пока не кончится. Вот код который получил методом проб и ошибок.
Теперь вопрос: почему если убрать строчку
или изменить условие цикла while
читается пустая строчка (null), а не прекращается цикл? Это сообщение отредактировал(а) Ukrajinec - 11.2.2016, 19:43 |
||||||
|
|||||||
_zorn_ |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 21.8.2007 Репутация: нет Всего: 12 |
С шарпом не знаком, но мне кажется что во время проверки читается строка.
Т.е. по факту в строке line = reader.ReadLine(); читается уже третья строчка при первом проходе. На втором 6-я ну и т.д. Надо использовать что то вроде while(!reader.endOfFile()). ЗЫ. С таким подходом удивляюсь почему в конце цикла еще одну точно такую же проверку не добавили... на всякий случай Это сообщение отредактировал(а) _zorn_ - 12.2.2016, 04:06 |
|||
|
||||
chupachups |
|
|||
Новичок Профиль Группа: Участник Сообщений: 0 Регистрация: 15.10.2008 Репутация: нет Всего: 1 |
потому что надо хелп читать и писать правильно:
Этот ответ добавлен с нового Винграда - http://vingrad.com |
|||
|
||||
solowey |
|
|||
Новичок Профиль Группа: Участник Сообщений: 0 Регистрация: 24.11.2009 Репутация: нет Всего: нет |
Не согласен с предыдущим оратором. В мсдн так написано:
Предыдущий вариант, так же можно использовать... И скорее всего по коду идет тройное считывание: 1 раз - while (reader.ReadLine() != null) 2 раз - if (reader.ReadLine() == null) break; 3 раз - line = reader.ReadLine(); На мой взгляд, в richTextBox2 должны попадать не все строки. Этот ответ добавлен с нового Винграда - http://vingrad.com |
|||
|
||||
chupachups |
|
|||
Новичок Профиль Группа: Участник Сообщений: 0 Регистрация: 15.10.2008 Репутация: нет Всего: 1 |
насчет записи в richTextBox2 согласен, туда я даже не смотрел. НО:
1) по условию задачи "читается файл построчно, пока не кончится" - ни через-строчно, ни через-два-три-и.т.д.-строчно 2) следует из первого, раз уж построчно, то зачем почем зря Peek-ать? ИМХО моё предложение более читаемо и интуитивно понятно нежели через Peek 3) вообще сам автор по сабжу сильно смахивает на студента 1 курса, посему не вижу особого смысла выяснять - как быстрее и красивее, ибо преподу нужно чтоб работало как задумано, и строки не терялись Этот ответ добавлен с нового Винграда - http://vingrad.com |
|||
|
||||
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | .NET для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |