Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 1
Регистрация: 15.04.2017
Сообщений: 23
1

Записать структуру в бинарный файл

22.04.2017, 17:56. Просмотров 1255. Ответов 5
Метки нет (Все метки)

Всем доброго времени суток. у меня такая проблема, мне нужно перекинуть в бинарный файл структуру. Структуру создала, все сделала. Файл создан как fstream h("str.dat", ios::binary). Так вот, я перекидываю туда структру(типа h<<sotr[i].name<<endl итд)Как открываю файл, то получается, что структура записана вся в одну строчку, хотя в текстовом все хорошо. как мне можно это исправить? Смотрела, что файл создается еще через * FILE , но хотелось бы использовать тот вариант, который описан выше
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.04.2017, 17:56
Ответы с готовыми решениями:

Как записать структуру в бинарный файл одним "блоком"
Как записать структуру в бинарный файл одним &quot;блоком&quot;, если в структуре есть private данные? ...

Записать в бинарный файл массив объектов Student (бинарный файловый ввод/вывод)
Здравствуйте. Стоит задача записать в бинарный файл массив объектов student: class student {...

Не получается прочесть правильно текстовый файл в структуру а затем в бинарный файл
Нужно просто прочесть файл в структуру данных а потом оттуда записать в бинарный файл Вот как...

Как открыть бинарный файл, не зная его структуру?
Можно ли как-нибудь открыть бинарный файл, не зная его структуру?

5
4565 / 3139 / 1342
Регистрация: 09.05.2015
Сообщений: 7,705
22.04.2017, 17:59 2
В бинарном файле нет понятия строк... Там хранятся байты, а уж как вы их будете интерпретировать это совсем другая история.
0
nd2
3405 / 2786 / 1251
Регистрация: 29.01.2016
Сообщений: 9,423
22.04.2017, 22:35 3
Цитата Сообщение от osminog18 Посмотреть сообщение
как мне можно это исправить?
Это специфика записи '\n' в бинарном режиме (запишется как есть, т.е. только '\n', в отличие от текстового режима, когда запишутся два символа: '\r' и '\n'). Бинарные файлы не предназначены для того, чтобы рассматривать их содержимое в текстовых редакторах.
Цитата Сообщение от osminog18 Посмотреть сообщение
мне нужно перекинуть в бинарный файл структуру.
Если в бинарный, то зачем текстовые методы записи используешь?
Цитата Сообщение от osminog18 Посмотреть сообщение
C++
1
<<sotr[i].name<<endl
0
0 / 0 / 1
Регистрация: 15.04.2017
Сообщений: 23
23.04.2017, 13:39  [ТС] 4
окей, тогда какие не текстовые методы нужно использовать? И если они не предназначены для просмотра в текстовых, тогда как проверить их содержимое?
0
nd2
3405 / 2786 / 1251
Регистрация: 29.01.2016
Сообщений: 9,423
23.04.2017, 19:24 5
Цитата Сообщение от osminog18 Посмотреть сообщение
тогда какие не текстовые методы нужно использовать?
write(), read().
Цитата Сообщение от osminog18 Посмотреть сообщение
И если они не предназначены для просмотра в текстовых, тогда как проверить их содержимое?
Запись проверяется чтением, чтение проверяется выводом на консоль.
0
4565 / 3139 / 1342
Регистрация: 09.05.2015
Сообщений: 7,705
23.04.2017, 19:33 6
Цитата Сообщение от osminog18 Посмотреть сообщение
тогда как проверить их содержимое?
Еще можно в Hex просмотрщике/редакторе любом посмотреть.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.04.2017, 19:33

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Как правильно сохранить и потом считать структуру в бинарный файл
Есть структура struct card { int size; char *lear; int *name; }; Эта структура это карты...

Данные записать в файл F1.txt, затем прочитать оттуда, обрабатывались и записывались в бинарный файл F2.bin с проверкой
Никак не получается отладить в BC++ 3.1. Как сделать в классах так, чтобы введённые данные...

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

Записать в бинарный файл матрицу
Возможно ли записать в бинарный файл матрицу (например, 5х6)? Если да, то каким образом? Нигде не...


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

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

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