Я использую библиотеку Qt, создаю QImages.
Я могу использовать этот конструктор :
QImage image("example.jpg");
Но у меня проблемы с этой статической функцией :
char buffer[sizeOfFile];
ifstream inFile("example.jpg");
inFile.read(buffer, sizeOfFile);
QImage image = QImage::fromData(buffer); // error here
// but there's nothing wrong with the buffer
ofstream outFile("bufferOut.jpg");
outFile.write(buffer, sizeOfFile);
Где Qt выплевывает на консоль:
Corrupt JPEG data: 1 extraneous bytes before marker 0xd9
JPEG datastream contains no image
Выше не точно , что у меня есть, но это единственное важное отличие. (Мне нужно иметь возможность читать из буфера, потому что я открываю изображения, которые находятся внутри zip-архива.)