利用Qt的qCompress和qUncompress来压缩和解压文件
有个特点,用qCompress压缩的文件不能直接用别的软件来解压,需要经过处理,否则只能利用Qt的qUncompress来解压,因此可以进行一些特殊的使用
头文件
#include <QByteArray>
#include <QDebug>
#include <QFile>
#include <QIODevice>
具体实现的两个函数
void Widget::zip()
{
QFile file("E:/1.bmp");
file.open(QIODevice::ReadOnly);
qint64 length = file.size();
QByteArray buff;
buff = file.read(length);
file.close();
buff = qCompress(buff, 5);
QFile write("E:/1.data");
write.open(QIODevice::WriteOnly);
write.write(buff);
write.close();
}
void Widget::unzip()
{
QFile read("E:/1.data");
read.open(QIODevice::ReadOnly);
QByteArray data;
data = read.readAll();
read.close();
data = qUncompress(data);
QFile temp("E:/1.bmp");
temp.open(QIODevice::WriteOnly);
temp.write(data);
temp.close();
}