Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/15: Рейтинг темы: голосов - 15, средняя оценка - 4.53
2 / 2 / 0
Регистрация: 12.03.2015
Сообщений: 24

File.ReadLine() не выводит первую строку файла

10.05.2016, 09:27. Показов 3191. Ответов 6

Студворк — интернет-сервис помощи студентам
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// Read the file and display it line by line.
            StreamReader file = new StreamReader(fileName, Encoding.Default);
           
            while ( !file.EndOfStream )
            {
                if ( file.ReadLine().StartsWith(name) & hands != null )
                {
                    MessageBox.Show(file.ReadLine());
                    pokerStarsLogic(hands);
                    MessageBox.Show(hands);
                    hands.Remove(0);
                }
 
                hands += file.ReadLine();
            }
 
            file.Close();
        }
Пожалуйста помогите в чем проблема. Пробовал еще так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// Read the file and display it line by line.
            StreamReader file = new StreamReader(fileName, Encoding.Default);
           
            while ( !file.EndOfStream )
            {
                if ( file.ReadLine().StartsWith(name) )
                {
                    MessageBox.Show(file.ReadLine());
                    pokerStarsLogic(hands);
                    MessageBox.Show(hands);
                    if ( hands != null ) hands.Remove(0);
                }
 
                hands += file.ReadLine();
            }
 
            file.Close();
        }
После чего он перестал выводить еще и вторую строку. Не могу догнать почему
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.05.2016, 09:27
Ответы с готовыми решениями:

Почему скрипт не выводит первую строку?
Привет. Ниже приведённый скрипт, упорно не выводит первую строку. В чём причина, может в таблице? $sqlMenu="SELECT*FROM menu"; ...

Списки. Не выводит первую вводимую строку
Здравствуйте, проблема с списками, после ввода элементов в список, не выводит первый добавленный. вот код: #include "stdafx.h" ...

Mysql_fetch_array выводит только первую строку из БД
Ребята, есть код: <?php session_start(); require_once 'config.php'; $login=$_POST; $password=$_POST; ...

6
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
10.05.2016, 10:22
Лучший ответ Сообщение было отмечено OwenGlendower как решение

Решение

Цитата Сообщение от supvlmail Посмотреть сообщение
Не могу догнать почему
Ну как же — вы первую строку читаете в условии:
Цитата Сообщение от supvlmail Посмотреть сообщение
C#
1
if ( file.ReadLine()
А в теле цикла — уже вторую. После условия — третью.
Потом четвертую строку опять в условии, а пятую и шестую — в теле цикла и после.
И так далее.

Читайте строку один раз перед условием, а потом обрабатывайте:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
            while ( !file.EndOfStream )
            {
                string line = file.ReadLine();
                if ( line.StartsWith(name) & hands != null )
                {
                    MessageBox.Show(line);
                    pokerStarsLogic(hands);
                    MessageBox.Show(hands);
                    hands.Remove(0);
                }
 
                hands += line;
            }
1
2 / 2 / 0
Регистрация: 12.03.2015
Сообщений: 24
10.05.2016, 11:46  [ТС]
kolorotur, подскажите, где вы научились этому, в книгах не написано про ReadLine, я не смог найти информацию по обработке этого метода, кроме возвращаемого значения, спасибо за ответ)))
0
1167 / 885 / 517
Регистрация: 09.04.2014
Сообщений: 2,098
10.05.2016, 12:02
Цитата Сообщение от supvlmail Посмотреть сообщение
я не смог найти информацию по обработке этого метода
msdn:
StreamReader.ReadLine - метод
Выполняет чтение строки символов из текущего потока и возвращает данные в виде строки.
0
2 / 2 / 0
Регистрация: 12.03.2015
Сообщений: 24
10.05.2016, 21:08  [ТС]
nedel, да ты что парень? Правда? Эммм, я и не знал. Хм. А еще я не знал, что возвращает он строку, а обрабатывать его, как оказалось в этой теме, нужно как массив.
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
10.05.2016, 23:26
Цитата Сообщение от supvlmail Посмотреть сообщение
а обрабатывать его, как оказалось в этой теме, нужно как массив.
Что нужно обрабатывать как массив?
0
1167 / 885 / 517
Регистрация: 09.04.2014
Сообщений: 2,098
11.05.2016, 00:42
Цитата Сообщение от supvlmail Посмотреть сообщение
Правда? Эммм, я и не знал.
видимо нет если вызывал 3 раза подряд и 3 раза выполнял чтение строки...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.05.2016, 00:42
Помогаю со студенческими работами здесь

Mysqli_query выводит только первую строку
Добрый день. Давно не работал с mysql. Подскажите что не так $connect = mysqli_connect('$host','$login','$pass','$db_name'); ...

Программа выводит только первую строку текста
// yourcat.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include <iostream> using...

Напечатать первую строку, пятую строку текстового файла
имеется текстовый файл , напечатать а) его первую строку б) его пятую строку

Дан текстовый файл. Вставить в начало файла его последнюю строку, а в конец первую строку.
Помогите решить задание, заранее спасибо. Дан текстовый файл. Вставить в начало файла его последнюю строку, а в конец первую строку.

Найти порядковый номер максимального элемента и записать его в первую строку файла, во 2-ю строку сам массив
var f, r: file of char; c: char; i, n,k: integer; max:char; x: array of char; begin assign(f,...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru