|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
24.10.2012, 23:12 | #1 |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 224
|
Запись std::bitset в файл. ofstream.
Нужно считать и записать std::bitset в файл bmp. Использовать нужно именно bitset, т.к. в дальнейшем некоторые биты байта будут изменяться (пытаюсь реализовать программу для стеганографии ).
Сейчас пытаюсь просто побайтово скопировать bmp-файл. Выходной файл получается чуть больше, чем исходный. Мистика начинается с байта d5. В него почему-то записывается значение 0d. Затем продолжается копирование (уже со сдвигом на 1 байт)... Затем в байт 230 опять пишет 0d. И продолжает копирование. Дальше уже не проверял. Запускал в отладчике, ни каких левых 0d в char byte не увидел... Подскажите пожалуйста, где я ошибся? В приложении к теме исходный и результирующий файлы. Код:
Люди бывают 10 типов: те, кто понимают двоичную систему счисления, и те, кто не понимают...
Последний раз редактировалось sVasilich; 24.10.2012 в 23:25. |
25.10.2012, 09:51 | #2 |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 224
|
Кхм. Такая проблема была под MS VisualStudio 2010. А вот в Qt Creator + Gcc работает нормально...
Люди бывают 10 типов: те, кто понимают двоичную систему счисления, и те, кто не понимают...
|
25.10.2012, 20:02 | #3 |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 224
|
Спасибо всем, кто потратил время на чтение темы Проблема решена. Нужно было открывать выходной файл в двоичном режиме:
Код:
Люди бывают 10 типов: те, кто понимают двоичную систему счисления, и те, кто не понимают...
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
(C++) Ofstream, не удается вывод в файл | O'neeL | Помощь студентам | 2 | 22.10.2012 23:57 |
Использование bitset | YourLastSong | Общие вопросы C/C++ | 3 | 18.10.2011 00:40 |
с++ запись в бинарный файл ofstream::write | Farrel | Общие вопросы C/C++ | 1 | 25.11.2010 00:19 |
ошибка: no match for ‘operator<<’ in ‘std::operator<< [with _Traits = std::char_traits<char> | Critter | Общие вопросы C/C++ | 5 | 08.08.2010 23:38 |
Как дописывать в файл с помощь потоков? (ofstream) | TwiX | Общие вопросы C/C++ | 3 | 23.12.2009 23:02 |