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

Считывание string из файла

14.03.2015, 09:51. Просмотров 621. Ответов 10
Метки нет (Все метки)

Есть текстовый файл. Первая строчка, в которой находится название не получается считать в string. Идущие за ним цифры считываются нормально. Подскажите, что не так делаю.

C++
1
2
3
4
    ifstream file;                                          
    file.open(Nazv.c_str());                         
    file >> Naimenovanie.c_str();
    file >> Kol_vo;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.03.2015, 09:51
Ответы с готовыми решениями:

Считывание из файла в массив string и int
Не могу вставить позицию разделителя после определения числовой переменной. ...

Считывание строки из бинарного файла в string
Привет всем!! Помогите новичку понять почему происходит ошибка при считывании...

Считывание файла в вектор типа string
Дело в том, что в общем то не работает по какой-то причине функция eof(); и...

Заменить считывание с клавиатуры на считывание из файла
Помогите пожалуйста, ни разу не работал со считыванием из файла поэтому не...

считывание строки( библиотека string)
задача в том чтоб считать сообщение с клавиатуры полностью(русские буквы...

10
0x10
2571 / 1751 / 288
Регистрация: 24.11.2012
Сообщений: 4,377
14.03.2015, 09:58 2
c_str возвращает указатель на константу. Естественно, в него ничего нельзя записать, не говоря о том, что память может быть не выделена.
std::getline
0
zss
Модератор
Эксперт С++
7188 / 6682 / 4231
Регистрация: 18.12.2011
Сообщений: 17,635
Завершенные тесты: 1
14.03.2015, 09:59 3
C++
1
2
3
4
ifstream file;                                          
    file.open(Nazv.c_str());                         
    getline(file,Naimenovanie);
    file >> Kol_vo;
0
Вир
0 / 0 / 0
Регистрация: 06.03.2014
Сообщений: 21
14.03.2015, 10:26  [ТС] 4
Сделал, как вы посоветовали. Выдает ошибку.
E2285 Could not find a match for 'getline<_CharT,_Traits,_Alloc>(ifstream,AnsiString)'
0
zss
Модератор
Эксперт С++
7188 / 6682 / 4231
Регистрация: 18.12.2011
Сообщений: 17,635
Завершенные тесты: 1
14.03.2015, 10:32 5
А
C++
1
#include <string>
где???????????????????????
0
Вир
0 / 0 / 0
Регистрация: 06.03.2014
Сообщений: 21
14.03.2015, 10:37  [ТС] 6
C++
1
#include <string.h>
Данная библиотека подключена
0
0x10
2571 / 1751 / 288
Регистрация: 24.11.2012
Сообщений: 4,377
14.03.2015, 10:46 7
Вир, найди 10 отличий. Или хотя бы 2:
string
string.h
0
Вир
0 / 0 / 0
Регистрация: 06.03.2014
Сообщений: 21
14.03.2015, 10:48  [ТС] 8
Отличия нашёл, изменил у себя - не помогло, та же самая ошибка.
0
0x10
2571 / 1751 / 288
Регистрация: 24.11.2012
Сообщений: 4,377
14.03.2015, 10:52 9
Тогда полный код в студию.

Добавлено через 1 минуту
Ах, да. Почему целевая строка-то AnsiString, а не std::string?
0
Вир
0 / 0 / 0
Регистрация: 06.03.2014
Сообщений: 21
14.03.2015, 11:40  [ТС] 10
Решил проблему так:
C++
1
2
3
4
5
6
7
    string Naimenovanie;
    std: string Vspom;
    ifstream file;                                          
    file.open(Nazv.c_str());                         
    getline(file,Naimenovanie);
    Naimenovanie=Vspom.c_str();
    file >> Kol_vo;
0
0x10
2571 / 1751 / 288
Регистрация: 24.11.2012
Сообщений: 4,377
14.03.2015, 11:46 11
Цитата Сообщение от Вир Посмотреть сообщение
Решил проблему так:
Сначала считал значение в переменную, потом тут же снес это значение. Это явно не решение.
0
14.03.2015, 11:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.03.2015, 11:46

Считывание vector<string> - жрёт память
Делаю считывание vector&lt;string&gt; из файла. При первом запуске (программа...

Считывание String посимвольно либо Char in Switch
Здравствуйте, суть такова: Нужно написать 3 числа (0-7), а дальше считать...

Считывание строк с клавиатуры без учёта разделителей в переменные типа std::string
Подскажите, есть какой способ считывать значения с клавиатуры без учёта...


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

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

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