Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Salabim
0 / 0 / 1
Регистрация: 27.09.2011
Сообщений: 75
#1

Ошибка при использовании getline для считывания строки из файлового потока - C++

07.05.2014, 20:07. Просмотров 460. Ответов 2
Метки нет (Все метки)

Ошибка находится в 24 строке на точке. Код, подобный этому (а в этой строке фактически 1 в 1 одинаковый) я разбирал в институте. Видимо ошибки совершают и доценты, но мне как-то не до этого.
Пожалуйста, помогите найти решение.

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
#include "stdafx.h"
#include <iostream> 
#include <fstream>
 
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{   setlocale(LC_ALL, "RUSSIAN");
 
struct 
{
    char number[10];
    char service_code[1];
    char service_date[10];
    char service_time[8];
    char service_duration[1000];
} Sservice_done[10];
 
fstream Gservice_done(L"service_done.txt", ios::in);
 
int count = 0;
 
while (!Gservice_done.eof())
{
    Gservice_done.getline(Sservice_done[count].number, 10, ", ");
}
 
    return 0;
}
Заранее благодарю!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.05.2014, 20:07     Ошибка при использовании getline для считывания строки из файлового потока
Посмотрите здесь:
При использовании getline не работает eof C++
При использовании getline ввод при Enter заканчивается только после пробела C++
Безконечый цикл при использовании cin и getline() C++
C++ Почему портится поток cin при использовании функции getline
C++ Почему при использовании getline( std::cin, str ) строка считывается не так, как ожидается?
Ошибка при использовании for_each для вектора C++
C++ Ошибка при использовании erase для std::vector
Передача файлового потока в функцию C++
Переключение файлового потока ввода вывода C++
C++ Передача файлового потока как параметр-ссылка
C++ Функция для считывания строки
Перевод потока из файлового ввода/вывода в консольный ввод/вывод C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nmcf
5251 / 4571 / 1535
Регистрация: 14.04.2014
Сообщений: 18,179
07.05.2014, 23:29     Ошибка при использовании getline для считывания строки из файлового потока #2
Разделитель (третий параметр) должен быть символом, а не строкой.
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
08.05.2014, 01:46     Ошибка при использовании getline для считывания строки из файлового потока #3
Открытие файлов для чтения всегда проверять нужно. И не нужно имя файла задавать через строку широких символов. Студия это пропускает, но, вообще, это не стандарт (mingw уже не компилирует).
C++
1
2
3
4
5
6
7
fstream Gservice_done("service_done.txt", ios::in);
if (!Gservice_done)
     cout << "Error!" << endl;
else
{
    ...
}
Про остальное nmcf написал.
Ответ Создать тему
Опции темы

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