• 8614阅读
  • 2回复

qUncompress 解压问题 [复制链接]

上一主题 下一主题
离线binbinming
 
只看楼主 倒序阅读 楼主  发表于: 2010-07-02
最近在用qt做解压.epub格式的电子书,由于.epub是遵循.zip格式的,所以可以用解压.zip的方法,但是我用qUncompress解压时要是出文件错误:qUncompress: Z_DATA_ERROR: Input data is corrupted
code :
QFile f(path);
    if (!f.open(QIODevice::ReadOnly | QIODevice::Text))
        qDebug()<<"open fail";
    qDebug()<<"file name : "<<f.fileName();
    QByteArray source = f.readAll();
    unsigned int size = f.size();
    qDebug()<<"size : "<<size;
    QByteArray dataPlus;
dataPlus.push_back((char)((size >> 24) & 0xFF));
    dataPlus.push_back((char)((size >> 16) & 0xFF));
    dataPlus.push_back((char)((size >> 8) & 0xFF));
    dataPlus.push_back((char)((size >> 0) & 0xFF));
    dataPlus.append(source);
QByteArray unBytes = qUncompress(dataPlus);
    qDebug()<<"uncompress leg : "<<unBytes.size();
离线binbinming
只看该作者 1楼 发表于: 2010-07-02
而且f.size()和source.size()部一样,为什么?
离线蝴蝶君
只看该作者 2楼 发表于: 2011-02-10
o(︶︿︶)o 唉

楼主,你弄出来了没啊?
[ 此帖被蝴蝶君在2011-02-10 11:48重新编辑 ]
快速回复
限100 字节
 
上一个 下一个