Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
14 / 14 / 8
Регистрация: 31.05.2012
Сообщений: 210
Записей в блоге: 2

Бинарные запись и чтение структуры в файл

03.06.2013, 14:42. Показов 1485. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Записываю структуру в файл.. нужно прочитать.. но он не читает... если delete n; убрать, то "Нарушение прав доступа при записи". delete n будто циклится....
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
29
30
31
32
33
34
35
36
37
38
39
#include <iostream>
#include <fstream>
#include <vector>
#include <string>
 
using namespace std;
struct abc
{
    string str;
    int  id;
    vector<string> vct;
};
int main()
{
    abc* z = new abc;
    z->str = "zz";
    z->id = 10;
    z->vct.push_back("zz2");
    z->vct.push_back("zz3");
 
    ofstream f("file.dat",ios::binary);
    f.write((char*)&z,sizeof(abc));
    f.close();
    delete z;
//чтение
    abc* n = new abc;
    ifstream zf("file.dat",ios::binary);
    zf.read((char*)&n,sizeof(abc));
    zf.close();
    
    int l = n->vct.size();
    for(int i = 0; i < l; i++)
    {
        cout<<n->vct[i]<<endl;
    }
    delete n;
 
    return 0;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.06.2013, 14:42
Ответы с готовыми решениями:

Запись\чтение структуры в\из файл(а)
Никак не пойму как записать структуру в файл, а потом считать ее. Есть структура struct sklad { char nazva; int...

Запись/Чтение структуры в файл (бинарный)
Всем привет! у меня такая задачка, очень простая. Нужно записать структуру в файл, а потом хочу проверить что же я там записал - тоесть...

Запись структуры в файл, чтение из файла и удаление (файловый ввод/вывод)
Добрый вечер! Возникла такая проблема, что при добавлении записи, удаляются уже имеющиеся записи в файле. Также не помешала бы помощь в...

1
138 / 130 / 59
Регистрация: 13.12.2012
Сообщений: 293
03.06.2013, 15:18
Может быть, нужно передавать адрес объекта, а не адрес указателя на него?
C++
1
2
f.write((char*)z,sizeof(abc));
zf.read((char*)n,sizeof(abc));
Теперь размер вектора читает правильно, но сами его элементы не сохраняются. Оно, наверное, и логично, ведь в векторе массив динамический, соответственно, при посимвольном копировании записывается только указатель, а не то, на что он указывает. Попробуйте записывать в файл не объектом, а поэлементно (хотя string тоже динамический, тогда уж и его можно по буквам записывать)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.06.2013, 15:18
Помогаю со студенческими работами здесь

Бинарные чтение/запись объектов
Всем привет. Люди добрые - поможите пожалуйста :) Написал такой код: #include &lt;iostream&gt; #include &lt;fstream&gt; #include...

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

fwrite\fread: чтение и запись в бинарные файлы
Добрый день. Пытаюсь разобратся с чтением и записью в бинарные файлы.. в общем обрисую в краце проблему, записываю класс. class tPoint ...

Чтение/запись структуры
День добрый! Помогите пожалуйста решить задачу: Сформировать текстовый файл, имеющий следующую структуру: фамилия, адрес, марка автомобиля,...

Запись и чтение структуры с файла
Привет всем.Столкнулся с проблема записи структуры в файл и чтения ее из файла.Вот сама структура: struct papa { ...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru