当前位置: 首页 > wzjs >正文

怎么建立挣流量的网站建筑公司企业愿景及理念

怎么建立挣流量的网站,建筑公司企业愿景及理念,上海网络推广上市公司,网站小程序怎么做在Qt C中,如果你需要快速压缩和解压缩数据,可以使用以下几种库: 1. zlib 简介: zlib 是一个非常流行的压缩库,支持 DEFLATE 压缩算法。它被广泛用于各种应用程序中,包括Qt。 集成: Qt 本身已经集成了 zlib&#xff0…

在Qt C++中,如果你需要快速压缩和解压缩数据,可以使用以下几种库:

1. zlib

  • 简介: zlib 是一个非常流行的压缩库,支持 DEFLATE 压缩算法。它被广泛用于各种应用程序中,包括Qt。

  • 集成: Qt 本身已经集成了 zlib,因此你可以直接使用 Qt 提供的类来进行压缩和解压缩操作。

  • 示例:

  • #include <QByteArray>
    #include <QDataStream>
    #include <zlib.h>QByteArray compressData(const QByteArray &data) {QByteArray compressedData;z_stream zs;memset(&zs, 0, sizeof(zs));if (deflateInit(&zs, Z_BEST_COMPRESSION) != Z_OK) {return QByteArray();}zs.next_in = (Bytef*)data.data();zs.avail_in = data.size();int ret;char outbuffer[32768];do {zs.next_out = reinterpret_cast<Bytef*>(outbuffer);zs.avail_out = sizeof(outbuffer);ret = deflate(&zs, Z_FINISH);compressedData.append(outbuffer, sizeof(outbuffer) - zs.avail_out);} while (ret == Z_OK);deflateEnd(&zs);if (ret != Z_STREAM_END) {return QByteArray();}return compressedData;
    }QByteArray decompressData(const QByteArray &compressedData) {QByteArray decompressedData;z_stream zs;memset(&zs, 0, sizeof(zs));if (inflateInit(&zs) != Z_OK) {return QByteArray();}zs.next_in = (Bytef*)compressedData.data();zs.avail_in = compressedData.size();int ret;char outbuffer[32768];do {zs.next_out = reinterpret_cast<Bytef*>(outbuffer);zs.avail_out = sizeof(outbuffer);ret = inflate(&zs, 0);decompressedData.append(outbuffer, sizeof(outbuffer) - zs.avail_out);} while (ret == Z_OK);inflateEnd(&zs);if (ret != Z_STREAM_END) {return QByteArray();}return decompressedData;
    }

 2. QuaZip

  • 简介: QuaZip 是一个基于 zlib 的 Qt 封装库,专门用于处理 ZIP 文件。它提供了更高级的接口来处理 ZIP 文件,包括压缩和解压缩。

  • 集成: 你需要手动将 QuaZip 集成到你的项目中。

  • 示例:

  • #include <quazip/quazip.h>
    #include <quazip/quazipfile.h>void compressFile(const QString &filePath, const QString &zipPath) {QuaZip zip(zipPath);zip.open(QuaZip::mdCreate);QuaZipFile outFile(&zip);outFile.open(QIODevice::WriteOnly, QuaZipNewInfo(QFileInfo(filePath).fileName(), filePath));QFile inFile(filePath);inFile.open(QIODevice::ReadOnly);outFile.write(inFile.readAll());outFile.close();zip.close();
    }void decompressFile(const QString &zipPath, const QString &extractPath) {QuaZip zip(zipPath);zip.open(QuaZip::mdUnzip);for (bool more = zip.goToFirstFile(); more; more = zip.goToNextFile()) {QuaZipFile inFile(&zip);inFile.open(QIODevice::ReadOnly);QFile outFile(extractPath + "/" + inFile.getActualFileName());outFile.open(QIODevice::WriteOnly);outFile.write(inFile.readAll());inFile.close();outFile.close();}zip.close();
    }

3. LZ4

  • 简介: LZ4 是一个非常快速的压缩算法,专注于压缩和解压缩速度。它适用于需要快速压缩和解压缩的场景。

  • 集成: 你需要手动将 LZ4 集成到你的项目中。

  • 示例:

#include <lz4.h>
#include <QByteArray>QByteArray compressData(const QByteArray &data) {int maxCompressedSize = LZ4_compressBound(data.size());QByteArray compressedData(maxCompressedSize, 0);int compressedSize = LZ4_compress_default(data.data(), compressedData.data(), data.size(), maxCompressedSize);compressedData.resize(compressedSize);return compressedData;
}QByteArray decompressData(const QByteArray &compressedData, int originalSize) {QByteArray decompressedData(originalSize, 0);int decompressedSize = LZ4_decompress_safe(compressedData.data(), decompressedData.data(), compressedData.size(), originalSize);decompressedData.resize(decompressedSize);return decompressedData;
}

4. Zstandard (zstd)

  • 简介: Zstandard 是 Facebook 开发的一个压缩算法,提供了高压缩比和快速的压缩/解压缩速度。

  • 集成: 你需要手动将 Zstandard 集成到你的项目中。

  • 示例:

#include <zstd.h>
#include <QByteArray>QByteArray compressData(const QByteArray &data) {size_t maxCompressedSize = ZSTD_compressBound(data.size());QByteArray compressedData(maxCompressedSize, 0);size_t compressedSize = ZSTD_compress(compressedData.data(), maxCompressedSize, data.data(), data.size(), 1);compressedData.resize(compressedSize);return compressedData;
}QByteArray decompressData(const QByteArray &compressedData, int originalSize) {QByteArray decompressedData(originalSize, 0);size_t decompressedSize = ZSTD_decompress(decompressedData.data(), originalSize, compressedData.data(), compressedData.size());decompressedData.resize(decompressedSize);return decompressedData;
}

总结

  • zlib: 适合大多数场景,Qt 已经集成。

  • QuaZip: 适合处理 ZIP 文件,基于 zlib。

  • LZ4: 适合需要极快压缩和解压缩速度的场景。

  • Zstandard: 提供高压缩比和较快的压缩/解压缩速度。

根据你的需求选择合适的库。如果你需要处理 ZIP 文件,QuaZip 是一个不错的选择;如果你需要极快的压缩速度,LZ4 或 Zstandard 可能更适合。


文章转载自:

http://uWbrDzzq.bptpq.cn
http://D78AZII3.bptpq.cn
http://4sdnEe7L.bptpq.cn
http://Fh8ByE7m.bptpq.cn
http://h7Ku1pYi.bptpq.cn
http://atC5gg8z.bptpq.cn
http://bGESN9Na.bptpq.cn
http://3sdRnS5A.bptpq.cn
http://mHSdcVja.bptpq.cn
http://yrnPk38I.bptpq.cn
http://0EZO5iPh.bptpq.cn
http://0cLjNUWs.bptpq.cn
http://deQahPlQ.bptpq.cn
http://iRChBjEg.bptpq.cn
http://mdgCiFel.bptpq.cn
http://i7zun3Q3.bptpq.cn
http://ln5objwd.bptpq.cn
http://F3MRBuys.bptpq.cn
http://3gfj36u9.bptpq.cn
http://axvQotj1.bptpq.cn
http://ApM5bt9I.bptpq.cn
http://KIYj2KVK.bptpq.cn
http://RzMh7gCr.bptpq.cn
http://sanzjfQz.bptpq.cn
http://L3X7Z6Eo.bptpq.cn
http://ii8ESLnv.bptpq.cn
http://72QsiIwv.bptpq.cn
http://e6OaTk59.bptpq.cn
http://7QSLnzda.bptpq.cn
http://mwblBSLW.bptpq.cn
http://www.dtcms.com/wzjs/723298.html

相关文章:

  • 网站样例商标注册号在哪个位置
  • 赣州建站自适应网站内容做多大尺寸
  • 利用网上菜谱做网站制作网页时通常用表格进行页面布局
  • 吴江设计网站公司wordpress打开
  • 提供网站建设搭建网站动态和静态的区别
  • 如何查看网站域名大数据开发培训机构哪家好
  • 电脑有网络但是打不开网页seo关键词快速排名介绍
  • 帮忙建站的公司北大青鸟职业技术学院简介
  • 网站底部流程品牌关键词排名优化怎么做
  • 印刷做网站网上接单wordpress 视频站模板
  • 重庆seo网站管理购物网站建设要求
  • 站长工具seo综合查询怎么用通信管理局网站 备案
  • 潍坊网站建设套餐大理网站制作
  • 网站搭建环境wordpress图片编辑
  • 淘宝客网站推广位怎么做wordpress文章标题字体
  • 做电影网站解析东莞合网站建设
  • js跳转到别的网站3d效果图什么网站做的好
  • 网站百科源码旋风加速官网下载
  • 苏州网站开发培训班免费wordpress主题 h5
  • 网站建设费属于广宣费吗网站建设前分析
  • 做网站 接单企业网络搭建教程
  • 有哪些可以在线做app的网站有哪些网站建设费用北京
  • 句容本地网站投资建设个什么网站好
  • 网站解析怎么设置设计师接私单网站
  • 潜江做网站哪家好python版wordpress
  • 海外仓网站建设ssc网站建设
  • 毕设 网站开发的必要性房山成都网站建设
  • dedecms做的网站收费吗新材料 东莞网站建设
  • 企业手机网站开发网站建设后怎么做主页
  • 秦淮网站建设北京搬家公司收费价目表