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

Добавление данных в конец файла .bmp - C++

Восстановить пароль Регистрация
 
Koketka
5 / 5 / 0
Регистрация: 27.11.2009
Сообщений: 232
12.05.2014, 11:12     Добавление данных в конец файла .bmp #1
Добрый день!

хочу записывать некую информацию в конец bmp файла

делаю так:
C++
1
2
3
4
5
6
7
8
9
10
11
uchar day = 12;
uchar month = 5;
ushort year = 2014;
 
FILE *f = fopen(fname, "ab");
 
fwrite(&day, sizeof(day), 1, f);
fwrite(&month, sizeof(month), 1, f);
fwrite(&year, sizeof(year), 1, f);
 
fclose(f);
fname - это путь к файлу с картинкой bmp

читаю:
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
FILE *f = fopen(fname, "rb");
 
size_t res;
 
    BITMAPFILEHEADER pBMFH;
    BITMAPINFOHEADER pBMIH;
 
    res = fread(&pBMFH, 1, sizeof(BITMAPFILEHEADER), f);
    fseek(f, sizeof(BITMAPFILEHEADER), SEEK_SET);
    if (res != sizeof(BITMAPFILEHEADER)) {fclose(f); return -1;}
 
    res = fread(&pBMIH, 1, sizeof(BITMAPINFOHEADER), f);
    fseek(f, sizeof(BITMAPINFOHEADER), SEEK_SET);
    if (res != sizeof(BITMAPINFOHEADER)) {fclose(f); return -2;}
 
    int SizeImagePix = pBMIH.biSizeImage;
    fseek(f, SizeImagePix, SEEK_SET);
 
uchar day;
    uchar month;
    ushort year;
 
res = fread(&day, 1, sizeof(day), f); fseek(f, sizeof(day), SEEK_SET);
    res = fread(&month, 1, sizeof(month), f); fseek(f, sizeof(month), SEEK_SET);
    res = fread(&year, 1, sizeof(year), f); fseek(f, sizeof(year), SEEK_SET);
всегда читается одно и тоже в day, month, year и не то, что записывала??
чего не так я делаю?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.05.2014, 11:12     Добавление данных в конец файла .bmp
Посмотрите здесь:

C++ ввод данных, добавление данных, получение информации из файла по заданным критериям выборки
Добавление в конец двусвязного списка C++
Добавление элемента в конец списка C++
добавление в конец массива char C++
Добавление числа в начало и конец C++
Добавление данных в двумерный массив из файла C++
C++ Добавление в конец списка
Добавление элемента в конец списка C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
 Аватар для zss
5953 / 5558 / 1787
Регистрация: 18.12.2011
Сообщений: 14,207
Завершенные тесты: 1
12.05.2014, 12:53     Добавление данных в конец файла .bmp #2
А не проще отойти от конца
C++
1
fseek(f, -2*sizeof(uchar)-sizeof(ushort), SEEK_END);
и саму bmp читать не придется!
Yandex
Объявления
12.05.2014, 12:53     Добавление данных в конец файла .bmp
Ответ Создать тему
Опции темы

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