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

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

Войти
Регистрация
Восстановить пароль
 
parkito
11 / 11 / 2
Регистрация: 22.03.2010
Сообщений: 692
#1

Запись файла в string - C++

15.05.2014, 23:26. Просмотров 435. Ответов 6
Метки нет (Все метки)

Здравствуйте. Помогите пожалуйста с решением вопроса.
Мне нужно чтобы все содержимое файла (пробелы, табуляция, символы) записались в переменную класса string.
Конструкция
C++
1
2
3
4
5
while(in) 
        {
           
            in>>AddTextFromFile;
        }
записывает в string лишь последнюю строку.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2014, 23:26
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Запись файла в string (C++):

Запись в файл string - C++
не могу записать в файл string, в файл записываются цифры и символы, вот сама запись, а менять на char это одни проблемы появятся в коде,...

Запись string в файл - C++
есть строка, я её должен записать в текстовый файл так,чтобы она разбилась на несколько строк , при этом длина каждой не превышала 10...

Чтение/запись string - C++
Есть массив объектов, хочу записывать и читать его в файл в бинарном виде. Одно поле объекта - строка string. Как правильно и наиболее...

запись string и функция replace - C++
Всем привет! Задача: в командную строку подается: входной и выходной файлы, слово которое надо заменить и слово НА которое надо заменить с...

Запись string в бинарный файл - C++
Здравствуйте еще раз! ^_^ Хочу понять, как правильно записывать бинарный файл и считывать информацию из него на примере string, т.к. с...

Запись string в бинарный файл - C++
Есть структура: struct Anketa { std::string name, family, brith_Date, tel; }; Надо что бы они записывали в бинарный файл...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Jupiter
Каратель
Эксперт С++
6554 / 3975 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
15.05.2014, 23:37 #2
Чтение всего файла fstream
1
parkito
11 / 11 / 2
Регистрация: 22.03.2010
Сообщений: 692
15.05.2014, 23:58  [ТС] #3
Почитав сделал

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
if( in.is_open() )
    {
        in.seekg(0, ios::end);
        length = in.tellg();
        in.seekg(0, ios::beg);
 
        lpBuf = new char[1 + length];
        in.read(lpBuf, length);
        lpBuf[length] = 0;
        AddTextFromFile=lpBuf;
        EnterText=EnterText+AddTextFromFile;
        cout<<endl<<"Результат"<<endl<<EnterText;
        in.close();
    }
Проблема другая. Вместо пробелов в конце файла читаются "H". Как от них можно избавиться?

Добавлено через 7 минут
Код
C++
1
2
3
std::ifstream file("text.txt");
file >> std::noskipws;
std::string str(std::istream_iterator<char>(file), std::istream_iterator<char>());
Не смог заставить работать.

Добавлено через 2 минуты
Тоже не работает.
C++
1
2
3
4
std::ifstream file("text.txt");
std::ostringstream oss;
oss << file.rdbuf();
std::string str = oss.str();
0
alsav22
5420 / 4816 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
16.05.2014, 00:15 #4
Цитата Сообщение от parkito Посмотреть сообщение
Тоже не работает.
Что значит не работает?
1
parkito
11 / 11 / 2
Регистрация: 22.03.2010
Сообщений: 692
16.05.2014, 00:18  [ТС] #5
Возможно я подключаю не те библиотеки.
Ошибки типа "недопустимый неполный тип", "неизвестный оператор".
0
alsav22
5420 / 4816 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
16.05.2014, 00:21 #6
Цитата Сообщение от parkito Посмотреть сообщение
Возможно я подключаю не те библиотеки.
Ошибки типа "недопустимый неполный тип", "неизвестный оператор".
Так и пишите, что не компилируется. При чём здесь не работает?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <fstream>
#include <string>
#include <sstream>
 
int main()
{
    std::ifstream file("text.txt");
    std::ostringstream oss;
    oss << file.rdbuf();
    std::string str = oss.str();
    std::cout << str << std::endl;
    
    std::cin.get();
    return 0;
}
1
parkito
11 / 11 / 2
Регистрация: 22.03.2010
Сообщений: 692
16.05.2014, 00:25  [ТС] #7
Неправильно выразился. Все заработало! Спасибо!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.05.2014, 00:25
Привет! Вот еще темы с ответами:

Запись string в бинарный файл - C++
Задача такая. Записать в бинарный файл строку string, а потом убедится, что все было записано верно. Помогите, если не сложно. Долго...

Запись трёхмерного массива string в файл - C++
Задан массив string M, который в процессе работы будет ежедневно пополнятся новыми словами. Как его записывать в файл, чтобы было удобно...

запись числа в экспоненциальной форме в string - C++
В шапке вопрос написан. Найти пока не смог, хоть и читал описание. std::string - вообще пока глухо; CString - там вроде через Format,...

Ввод string'a с консоли и запись его в вектор - C++
Здравствуйте дело в том что мне надо написать программу которая работает с строчным вектором типа string. Вроде-бы все нормально я набросал...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
16.05.2014, 00:25
Ответ Создать тему
Опции темы

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