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

Бинарная запись в файл - C++

Восстановить пароль Регистрация
 
JunCpp
Сообщений: n/a
07.02.2014, 08:24     Бинарная запись в файл #1
Приветствую!

Пишу архиватор. Нужно записать в файл бинарные данные и казалось бы ничего сложного...
Открываю/создаю файл для вывода

C++
1
2
3
std::ofstream output_file;
output_file.open(path_file.c_str(), std::ios::binary | std::ios::out);
assert(output_file.is_open(), "Error! Output file not open.");
Нужно заполнить словарь(std::map), парой std::string + unsigned short


C++
1
2
3
4
5
6
7
uint counter_combination = 0;
while(counter_combination < 256) 
        {
        std::string symbol;
        symbol.push_back(static_cast<char>(counter_combination));
        alphabet[symbol] = counter_combination++;
        }
записать в файл unsigned short

C++
1
output_file.write(reinterpret_cast<char*>(&iter_alphabet->second), sizeof(iter_alphabet->second));
В итоге запись в файл формата .dat - текстовая.
Но, если я заполняю словарь начиная с префиксного инкремента ++counter_combination (как бы это не смешно звучало) , то вывод, в файл происходит в бинарном виде.
Т.е.
C++
1
2
3
4
5
6
7
uint counter_combination = 0;
while(counter_combination < 256) 
        {
        std::string symbol;
        symbol.push_back(static_cast<char>(counter_combination));
        alphabet[symbol] = ++counter_combination;
        }
Думал что дело в нуле
Но при
C++
1
2
uint counter_combination = 1;
counter_combination++;
вывод в файл тоже текстовый.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.02.2014, 08:24     Бинарная запись в файл
Посмотрите здесь:

C++ бинарная сорировка и измерение работы функции
C++ Бинарная переменная
запись в файл. не создается файл C++
Двоичная(бинарная) сортировка C++
C++ Бинарная тема)
C++ Бинарная сортировка файла
C++ Бинарная ассоциация
C++ Бинарная запись в конец файла JPG и считывание

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
07.02.2014, 12:07     Бинарная запись в файл #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Текст, как ни пиши, всё равно будет в файле текстом (кодами символов), потому что в любом режиме записываются коды символов (байты). Файл текстовым редактором смотрите? Если значения байтов в файле имеют графическое отображение (равны кодам символов), то графический редактор выведет их в виде символов.
Yandex
Объявления
07.02.2014, 12:07     Бинарная запись в файл
Ответ Создать тему
Опции темы

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