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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.83
murtukov
 Аватар для murtukov
8 / 8 / 3
Регистрация: 30.01.2013
Сообщений: 99
#1

Как записать объект с полем типа std::string в бинарном виде в файл и считать его обратно? - C++

07.10.2013, 20:23. Просмотров 1533. Ответов 22
Метки нет (Все метки)

Знаю как записывать объекты в файл в бинарном виде, но как быть, когда у них динамические поля?
Какой метод использовать? Можете привести самый простейший пример?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.10.2013, 20:23     Как записать объект с полем типа std::string в бинарном виде в файл и считать его обратно?
Посмотрите здесь:

Считать граф из файла (граф задан матрицей) представить его в виде списка и записать список заново в файл C++
C++ Здравствуйте! Создал класс std::string. Не создается объкт типа string... Подскажите в чем причина?
C++ Дан исходный текстовый файл. Записать его строки в выходной файл в перевёрнутом виде
Std:string в бинарный файл и обратно C++
C++ Считать текст из файла и записать его в другой файл, заменив каждую первую букву слов
Записать в файл list (очередь) объектов, в которых содержатся строки string, и считать с файла обратно в list C++
Как скопировать строку типа std::string в другую строку такого же типа? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6547 / 3967 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
08.10.2013, 00:30     Как записать объект с полем типа std::string в бинарном виде в файл и считать его обратно? #21
Цитата Сообщение от murtukov Посмотреть сообщение
Например:
string::size_type length = s.size(); Видно, что эта строка нужна для определения размера s, но что за size_type? Что это за тип?
string::size_type это псведоним типа котрый используется для хранения размера строки, обычно это псевдоним типа size_t, который в свою очередь является псевдонимом беззнакового целого равного машинному слову
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
murtukov
 Аватар для murtukov
8 / 8 / 3
Регистрация: 30.01.2013
Сообщений: 99
08.10.2013, 00:41  [ТС]     Как записать объект с полем типа std::string в бинарном виде в файл и считать его обратно? #22
Croessmah,
в конструкции ifs.read().read()? какой read() выполняется первым? Я так понимаю левый?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.10.2013, 00:54     Как записать объект с полем типа std::string в бинарном виде в файл и считать его обратно?
Еще ссылки по теме:

C++ Считать текст из файла в строку типа std::string (файловый ввод/вывод)
Из переменной типа std::string записать в файл большое количество данных (2 Mb) C++
Как создать и заполнить динамический массив строк типа std::string? C++
Как считать строку типа string? C++
C++ Как инициализировать объект типа std::deque<int>?

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

Или воспользуйтесь поиском по форуму:
Croessmah
Модератор
Эксперт CЭксперт С++
 Аватар для Croessmah
12508 / 7070 / 794
Регистрация: 27.09.2012
Сообщений: 17,457
Записей в блоге: 2
Завершенные тесты: 1
08.10.2013, 00:54     Как записать объект с полем типа std::string в бинарном виде в файл и считать его обратно? #23
Цитата Сообщение от murtukov Посмотреть сообщение
в конструкции ifs.read().read()? какой read() выполняется первым? Я так понимаю левый?
Да. Такие вещи всегда можно проверить самому.

Добавлено через 1 минуту
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
 
struct Test {
    Test & read ( const char * str ) {
        std :: cout << str << std ::endl ;
        return *this ;
    }
};
 
int main ( ) {
    Test obj ;
    obj.read ( "first" ).read ( "second" ) ;
}
Yandex
Объявления
08.10.2013, 00:54     Как записать объект с полем типа std::string в бинарном виде в файл и считать его обратно?
Ответ Создать тему
Опции темы

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