Как читать данные PHP -gzcompress- из C++
Это мой код на C++:
#include <QtCore/QCoreApplication>
#include <QtCore/QDebug>
#include <QFile>
#include <QByteArray>
QByteArray UnZip (QString zipfilename)
{
QFile infile(zipfilename);
infile.open(QIODevice::ReadOnly);
//QByteArray uncompressedData = infile.readAll();
QByteArray uncompressedData = qUncompress(infile.readAll());
infile.close();
return uncompressedData;
}
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
//QString path = "/Users/davide/Desktop/fh8RkbUf";
QString path = "/Users/davide/Desktop/test";
QByteArray data = UnZip(path);
qDebug() << "message";
return a.exec();
}
; это возвращает qUncompress: Z_DATA_ERROR: Input data is corrupted
Тем не менее, данные должны быть сжаты ZLIB и PHP gzuncompress($data)
работает отлично.
Также, cat file | uncompress
возвращает ошибки.
Сторона php кода
$data = gzcompress($data, 6);
$success = file_put_contents($file, $data);