如何阅读PHP';s-gzcompress-来自c++; 这是我的C++代码: #include <QtCore/QCoreApplication> #include <QtCore/QDebug> #inc

如何阅读PHP';s-gzcompress-来自c++; 这是我的C++代码: #include <QtCore/QCoreApplication> #include <QtCore/QDebug> #inc,php,c++,zlib,Php,C++,Zlib,如何阅读PHP';s-gzcompress-来自c++; 这是我的C++代码: #include <QtCore/QCoreApplication> #include <QtCore/QDebug> #include <QFile> #include <QByteArray> QByteArray UnZip (QString zipfilename) { QFile infile(zipfilename);

如何阅读PHP';s-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();
}

据我所知,解压gzip数据的目标是什么。我这里有zlib数据。(也许我错了)我这里没有QT,我读到PHP是ZLIB(不是GZ)。是的,所以它应该与qUncompress兼容,阅读文档。不知道。@cedivad:尝试使用
python
(有一个方便的
zlib
标准模块)解压缩文件,看看它是否已损坏
compress
uncompress
仅使用LZ77编码,而不是zlib格式,因此出现错误是正常的。据我所知,解压gzip数据的目标是什么。我这里有zlib数据。(也许我错了)我这里没有QT,我读到PHP是ZLIB(不是GZ)。是的,所以它应该与qUncompress兼容,阅读文档。不知道。@cedivad:尝试使用
python
(有一个方便的
zlib
标准模块)解压缩文件,看看它是否已损坏<代码>压缩和
解压缩
仅使用LZ77编码,而不是zlib格式,因此出现错误是正常的。
$data = gzcompress($data, 6);
$success = file_put_contents($file, $data);