鸿蒙开发接口应用程序包管理:【@ohos.zlib (Zip模块)】

电子说

1.3w人已加入

描述

Zip模块(JS端SDK接口)

说明: 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

使用限制

无。

开发前请熟悉鸿蒙开发指导文档 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]点击或者复制转到。

导入模块

import zlib from '@ohos.zlib';

zlib.zipFile

zipFile(inFile:string, outFile:string, options: Options): Promise

压缩接口(Promise形式)。

系统能力: SystemCapability.BundleManager.Zlib

参数:

参数名类型必填描述
inFilestring指定压缩的文件夹路径或者文件路径,对应的路径参考[FA模型],[stage模型]
outFilestring指定的压缩结果的文件路径(文件的扩展名zip)
options[Options]压缩的可选参数

返回值:

类型说明
PromiseERROR_CODE_OK:压缩成功 ERROR_CODE_ERRNO:压缩失败

示例1:

//【压缩文件 例子1】 
import zlib from '@ohos.zlib'
var inFile = "/xxx/filename.xxx";
var outFile = "/xxx/xxx.zip";
var options = {
  level: zlib.CompressLevel.COMPRESS_LEVEL_DEFAULT_COMPRESSION,
  memLevel: zlib.MemLevel.MEM_LEVEL_DEFAULT,
  strategy: zlib.CompressStrategy.COMPRESS_STRATEGY_DEFAULT_STRATEGY
};

zlib.zipFile(inFile, outFile, options).then((data) = > {
    console.log("zipFile result:" + data);
}).catch((err)= >{
    console.log("catch((err)= >" + err);
});

示例2:

// 【压缩文件夹 例子2】
import zlib from '@ohos.zlib'
var inFile = "/xxx/xxx";
var outFile = "/xxx/xxx.zip";
var options = {
  level: zlib.CompressLevel.COMPRESS_LEVEL_DEFAULT_COMPRESSION,
  memLevel: zlib.MemLevel.MEM_LEVEL_DEFAULT,
  strategy: zlib.CompressStrategy.COMPRESS_STRATEGY_DEFAULT_STRATEGY
};

zlib.zipFile(inFile , outFile, options).then((data) = > {
    console.log("zipFile result:" + data);
}).catch((err)= >{
    console.log("catch((err)= >" + err);
});

zlib.unzipFile

unzipFile(inFile:string, outFile:string, options: Options): Promise

解压文件,解压完成返回执行结果(Promise形式)。

系统能力: SystemCapability.BundleManager.Zlib

参数:

参数名类型必填描述
inFilestring指定压缩的文件夹路径或者文件路径,对应的路径参考[FA模型],[stage模型]
outFilestring指定的解压文件路径
options[Options]解压的可选参数

返回值:

类型说明
PromiseERROR_CODE_OK:解压成功 ERROR_CODE_ERRNO:解压失败返回执行结果。

示例:

// 【解压例子1】 
import zlib from '@ohos.zlib'
var inFile = "/xx/xxx.zip";
var outFile = "/xxx";

let options = {
  level: zlib.CompressLevel.COMPRESS_LEVEL_DEFAULT_COMPRESSION,
  memLevel: zlib.MemLevel.MEM_LEVEL_DEFAULT,
  strategy: zlib.CompressStrategy.COMPRESS_STRATEGY_DEFAULT_STRATEGY
};
zlib.unzipFile(inFile, outFile, options).then((data) = > {
    console.log("unzipFile result:" + data);
}).catch((err)= >{
    console.log("catch((err)= >" + err);
})

Options

系统能力: SystemCapability.BundleManager.Zlib

参数名类型必填说明
levelCompressLeve[参考zip.CompressLevel枚举定义]
memLevelMemLevel[参考zip.MemLevel枚举定义]
strategyCompressStrategy[参考zip.CompressStrategy枚举定义]

zip.MemLevel

系统能力: SystemCapability.BundleManager.Zlib

名称说明
MEM_LEVEL_MIN1zip 接口在压缩过程中最小使用内存
MEM_LEVEL_MAX9zip 接口在压缩过程中最大使用内存
MEM_LEVEL_DEFAULT8zip 接口在压缩过程中默认使用内存

zip.CompressLevel

系统能力: SystemCapability.BundleManager.Zlib

名称说明
COMPRESS_LEVEL_NO_COMPRESSION0压缩率为0压缩等级
COMPRESS_LEVEL_BEST_SPEED1最佳速度压缩等级
COMPRESS_LEVEL_BEST_COMPRESSION9最佳压缩等级
COMPRESS_LEVEL_DEFAULT_COMPRESSION-1默认压缩等级

zip.CompressStrategy

系统能力: SystemCapability.BundleManager.Zlib

名称HarmonyOS与OpenHarmony鸿蒙文档籽料:mau123789是v直接拿说明
COMPRESS_STRATEGY_DEFAULT_STRATEGY0常规数据策略
COMPRESS_STRATEGY_FILTERED1过滤器产生的数据压缩策略
COMPRESS_STRATEGY_HUFFMAN_ONLY2霍夫曼编码格式压缩策略
COMPRESS_STRATEGY_RLE3游标编码压缩策略
COMPRESS_STRATEGY_FIXED4固定的压缩策略

HarmonyOS

zip.ErrorCode

系统能力: SystemCapability.BundleManager.Zlib

名称说明
ERROR_CODE_OK0函数调用成功
ERROR_CODE_ERRNO-1函数调用失败
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分