提交 2323e164 编写于 作者: L longwei

add zlib api in doc

Signed-off-by: Nlongwei <longwei27@huawei.com>
Change-Id: I050b23e4a1b1eb9e30eecfc953abe0d90d782004
上级 ed2591db
# Zip模块(JS端SDK接口)
本模块提供压缩解压缩文件的能力
> **说明:**
>
> 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
## 使用限制
无。
## 导入模块
```javascript
import zlib from '@ohos.zlib';
```
## zlib.zipFile
zipFile(inFile:string, outFile:string, options: Options): Promise&lt;void&gt;
## zlib.zipFile<sup>(deprecated)</sup>
zipFile(inFile:string, outFile:string, options: Options): Promise&lt;void&gt;
压缩接口(Promise形式)。
> 从api9开始不再维护,建议使用[zlib.compressFile](#zlibcompressfile9)
**系统能力:** SystemCapability.BundleManager.Zlib
**参数:**
......@@ -76,12 +77,14 @@ zlib.zipFile(inFile , outFile, options).then((data) => {
});
```
## zlib.unzipFile
## zlib.unzipFile<sup>(deprecated)</sup>
unzipFile(inFile:string, outFile:string, options: Options): Promise&lt;void&gt;
解压文件,解压完成返回执行结果(Promise形式)。
> 从api9开始不再看护,建议使用[zlib.decompressFile](#zlibdecompressfile9)
**系统能力:** SystemCapability.BundleManager.Zlib
**参数:**
......@@ -119,6 +122,193 @@ zlib.unzipFile(inFile, outFile, options).then((data) => {
```
## zlib.compressFile<sup>9+</sup>
**function** compressFile(inFile: **string**, outFile: **string**, options: Options, callback: AsyncCallback<**void**>): **void**;
压缩文件,压缩的结果通过callback返回。成功时返回null,失败时返回错误码。
**系统能力:** SystemCapability.BundleManager.Zlib
**参数:**
| 参数名 | 类型 | 必填 | 描述 |
| ----------------------- | ------------------- | ---- | ------------------------------------------------------------ |
| inFile | string | 是 | 指定压缩的文件夹路径或者文件路径,对应的路径参考[FA模型](js-apis-Context.md)[stage模型](js-apis-application-context.md) |
| outFile | string | 是 | 指定的解压文件路径 |
| options | [Options](#options) | 是 | 压缩的配置参数 |
| AsyncCallback<**void**> | callback | 否 | 压缩时的回调函数 |
**相关错误码**
| 错误码 | 错误信息 |
| ------ | -------------------------------------- |
| 401 | wrong param type |
| 900001 | The Input source file is invalid. |
| 900002 | The Input destination file is invalid. |
**示例**
```javascript
// 【压缩例子1】
// 代码中使用的路径需为应用的沙箱路径,如/data/storage/el2/base/haps,也可以通过context获取
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
};
try {
zlib.compressFile(inFile, outFile, options, (errData) => {
if (erData != null) {
console.log("errData is " + errData.errCode + " " + errData.message)
}
})
} catch(errData => {
console.log("catch err " + errData.errCode + " " + errData.message)
})
```
**function** compressFile(inFile:**string**, outFile:**string**, options: Options): Promise<**void**>;
压缩文件,压缩的结果通过promise返回,成功时返回null,失败时返回错误码。
**系统能力:** SystemCapability.BundleManager.Zlib
**参数:**
| 参数名 | 类型 | 必填 | 描述 |
| ----------------------- | ------------------- | ---- | ------------------------------------------------------------ |
| inFile | string | 是 | 指定压缩的文件夹路径或者文件路径,对应的路径参考[FA模型](js-apis-Context.md)[stage模型](js-apis-application-context.md) |
| outFile | string | 是 | 指定的解压文件路径 |
| options | [Options](#options) | 是 | 压缩的配置参数 |
| AsyncCallback<**void**> | callback | 否 | 压缩时的回调函数 |
**相关错误码**
| 错误码 | 错误信息 |
| ------ | -------------------------------------- |
| 401 | wrong param type |
| 900001 | The Input source file is invalid. |
| 900002 | The Input destination file is invalid. |
```javascript
// 【压缩例子2】
// 代码中使用的路径需为应用的沙箱路径,如/data/storage/el2/base/haps,也可以通过context获取
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
};
try {
zlib.compressFile(inFile, outFile, options).then(data => {
console.info("compressFile success")
}).catch(errData => {
console.info("catch err " + errData.errCode + " " + errData.message)
})
} catch(errData => {
console.log("catch err " + errData.errCode + " " + errData.message)
})
```
## zlib.decompressFile<sup>9+</sup>
**function** decompressFile(inFile: **string**, outFile: **string**, options: Options, callback: AsyncCallback<**void**>): **void**;
解压文件,解压的结果通过callback返回,成功时返回null,失败时返回错误码。
**参数:**
| 参数名 | 类型 | 必填 | 描述 |
| ----------------------- | ------------------- | ---- | ------------------------------------------------------------ |
| inFile | string | 是 | 指定的待解压缩文件的文件路径,对应的路径参考[FA模型](js-apis-Context.md)[stage模型](js-apis-application-context.md) |
| outFile | string | 是 | 指定的解压后的目录路径 |
| options | [Options](#options) | 是 | 解压的配置参数 |
| AsyncCallback<**void**> | callback | 否 | 解压是的回调函数 |
**相关错误码**
| 错误码 | 错误信息 |
| ------ | -------------------------------------- |
| 401 | wrong param type |
| 900001 | The Input source file is invalid. |
| 900002 | The Input destination file is invalid. |
**示例**
```javascript
// 【解压缩例子1】
// 代码中使用的路径需为应用的沙箱路径,如/data/storage/el2/base/haps,也可以通过context获取
import zlib from '@ohos.zlib'
var inFile = "/xx/xxx.zip";
var outFile = "/xxx";
var options = {
level: zlib.CompressLevel.COMPRESS_LEVEL_DEFAULT_COMPRESSION,
memLevel: zlib.MemLevel.MEM_LEVEL_DEFAULT,
strategy: zlib.CompressStrategy.COMPRESS_STRATEGY_DEFAULT_STRATEGY
};
try {
zlib.decompressFile(inFile, outFile, options, (errData) => {
if (erData != null) {
console.log("errData is " + errData.errCode + " " + errData.message)
}
})
} catch(errData => {
console.log("catch err " + errData.errCode + " " + errData.message)
})
```
**function** decompressFile(inFile: **string**, outFile: **string**, options: Options): Promise<**void**>;
解压文件,解压的结果通过promise返回,成功时返回null,失败时返回错误码。
**参数:**
| 参数名 | 类型 | 必填 | 描述 |
| ------- | ------------------- | ---- | ------------------------------------------------------------ |
| inFile | string | 是 | 指定的待解压缩文件的文件路径,对应的路径参考[FA模型](js-apis-Context.md)[stage模型](js-apis-application-context.md) |
| outFile | string | 是 | 指定的解压后的目录路径 |
| options | [Options](#options) | 是 | 解压时的配置参数 |
**相关错误码**
| 错误码 | 错误信息 |
| ------ | -------------------------------------- |
| 401 | wrong param type |
| 900001 | The Input source file is invalid. |
| 900002 | The Input destination file is invalid. |
```javascript
// 【解压缩例子2】
// 代码中使用的路径需为应用的沙箱路径,如/data/storage/el2/base/haps,也可以通过context获取
import zlib from '@ohos.zlib'
var inFile = "/xx/xxx.zip";
var outFile = "/xxx";
var options = {
level: zlib.CompressLevel.COMPRESS_LEVEL_DEFAULT_COMPRESSION,
memLevel: zlib.MemLevel.MEM_LEVEL_DEFAULT,
strategy: zlib.CompressStrategy.COMPRESS_STRATEGY_DEFAULT_STRATEGY
};
try {
zlib.compressFile(inFile, outFile, options).then(data => {
console.info("compressFile success")
}).catch(errData => {
console.info("catch err " + errData.errCode + " " + errData.message)
})
} catch(errData => {
console.log("catch err " + errData.errCode + " " + errData.message)
})
```
## Options
**系统能力:** SystemCapability.BundleManager.Zlib
......
# zlib子系统错误码
## 401 参数检查错误
**错误信息**
The parameter invalid.
**错误描述**
当调用zlib的compress及decompress接口时,若传入参数的类型或者范围不匹配,会报此错误码。
**可能原因**
1. 入参类型错误不匹配,如传入的文件路径类型不是strinf。
2. 入参范围不匹配,如传入的options中包含的枚举不存在。
**处理步骤**
检查入参类型和范围是否匹配。
## 900001 传入的源文件错误
**错误信息**
The input source file is invalid.
**错误描述**
当调用compress或decompress接口时,传入源文件无效。
**可能原因**
当调用compress接口时,传入的待压缩的文件不存在;当调用decompress接口时,传入的待解压缩的文件不存在。
**处理步骤**
检查源文件是否存在。
## 900002 传入的目标文件错误
**错误信息**
The input destination file is invalid.
**错误描述**
当调用compress或decompress接口时,传入目标文件无效。
**可能原因**
1. 当调用compress接口时,传入的目标文件路径无效,如不存在的沙箱路径。
2. 当调用decompress接口时,传入的目标目录不存在。
**处理步骤**
1. 检查目标文件路径是否正确,不正确填写正确的沙箱路径。
2. 检查目标文件目录是否存在,不存在新建这个路径。
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册