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
參數:
參數名 | 類型 | 必填 | 描述 |
---|---|---|---|
inFile | string | 是 | 指定壓縮的文件夾路徑或者文件路徑,對應的路徑參考[FA模型],[stage模型] |
outFile | string | 是 | 指定的壓縮結果的文件路徑(文件的擴展名zip) |
options | [Options] | 否 | 壓縮的可選參數 |
返回值:
類型 | 說明 |
---|---|
Promise | ERROR_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
參數:
參數名 | 類型 | 必填 | 描述 |
---|---|---|---|
inFile | string | 是 | 指定壓縮的文件夾路徑或者文件路徑,對應的路徑參考[FA模型],[stage模型] |
outFile | string | 是 | 指定的解壓文件路徑 |
options | [Options] | 否 | 解壓的可選參數 |
返回值:
類型 | 說明 |
---|---|
Promise | ERROR_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
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
level | CompressLeve | 否 | [參考zip.CompressLevel枚舉定義] |
memLevel | MemLevel | 否 | [參考zip.MemLevel枚舉定義] |
strategy | CompressStrategy | 否 | [參考zip.CompressStrategy枚舉定義] |
zip.MemLevel
系統能力: SystemCapability.BundleManager.Zlib
名稱 | 值 | 說明 |
---|---|---|
MEM_LEVEL_MIN | 1 | zip 接口在壓縮過程中最小使用內存 |
MEM_LEVEL_MAX | 9 | zip 接口在壓縮過程中最大使用內存 |
MEM_LEVEL_DEFAULT | 8 | zip 接口在壓縮過程中默認使用內存 |
zip.CompressLevel
系統能力: SystemCapability.BundleManager.Zlib
名稱 | 值 | 說明 |
---|---|---|
COMPRESS_LEVEL_NO_COMPRESSION | 0 | 壓縮率為0壓縮等級 |
COMPRESS_LEVEL_BEST_SPEED | 1 | 最佳速度壓縮等級 |
COMPRESS_LEVEL_BEST_COMPRESSION | 9 | 最佳壓縮等級 |
COMPRESS_LEVEL_DEFAULT_COMPRESSION | -1 | 默認壓縮等級 |
zip.CompressStrategy
系統能力: SystemCapability.BundleManager.Zlib
名稱HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿 | 值 | 說明 |
---|---|---|
COMPRESS_STRATEGY_DEFAULT_STRATEGY | 0 | 常規數據策略 |
COMPRESS_STRATEGY_FILTERED | 1 | 過濾器產生的數據壓縮策略 |
COMPRESS_STRATEGY_HUFFMAN_ONLY | 2 | 霍夫曼編碼格式壓縮策略 |
COMPRESS_STRATEGY_RLE | 3 | 游標編碼壓縮策略 |
COMPRESS_STRATEGY_FIXED | 4 | 固定的壓縮策略 |
zip.ErrorCode
系統能力: SystemCapability.BundleManager.Zlib
名稱 | 值 | 說明 |
---|---|---|
ERROR_CODE_OK | 0 | 函數調用成功 |
ERROR_CODE_ERRNO | -1 | 函數調用失敗 |
-
接口
+關注
關注
33文章
8684瀏覽量
151636 -
應用程序
+關注
關注
38文章
3290瀏覽量
57816 -
HarmonyOS
+關注
關注
79文章
1980瀏覽量
30401 -
OpenHarmony
+關注
關注
25文章
3744瀏覽量
16471 -
鴻蒙OS
+關注
關注
0文章
190瀏覽量
4488
發布評論請先 登錄
相關推薦
評論