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アーカイブ内の画像を開くため、バッファから読み取れる必要があります。)