переписать часть двоичного файла

У меня есть файл изображения с заголовком и метаинформацией, данные изображения сохраняются после заголовка, я хочу перезаписать данные изображения, но другие данные вокруг раздела изображения повреждены (заголовок) и файл обрезан.

Как я могу сделать это правильно?

Вот код:

FILE* f = _tfopen(fileName, _T("wb"));
if( f != NULL )
{
uint64 headerSize = 8;
char arr[2*3*3]; //w=3 h=2  RGB
memset(arr,100,2*3*3);
_fseeki64(f, headerSize, SEEK_SET);
fwrite(arr,sizeof(char),sizeof(arr),f);
fclose(f);
}

0

Решение

Я думаю, вам нужно изменить режим открытия из вашего файла с "wb" в "r+b"

от cplusplus.com:

"w" write: Create an empty file for output operations. If a file with the same name already exists, its contents are discarded and the file is treated as a new empty file.

4

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]