• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# zlib子系统错误码
2<!--Kit: Ability Kit-->
3<!--Subsystem: BundleManager-->
4<!--Owner: @wanghang904-->
5<!--Designer: @hanfeng6-->
6<!--Tester: @kongjing2-->
7<!--Adviser: @Brilliantry_Rui-->
8
9> **说明:**
10>
11> 以下仅介绍本模块特有错误码,通用错误码请参考[通用错误码说明文档](../errorcode-universal.md)。
12
13## 900001 传入的源文件错误
14
15**错误信息**
16
17The input source file is invalid.
18
19**错误描述**
20
21当调用compressFile或decompressFile接口时,传入源文件无效。
22
23**可能原因**
24
25当调用compressFile接口时,传入的待压缩的文件不存在;当调用decompressFile接口时,传入的待解压缩的文件不存在。
26
27**处理步骤**
28
291. 检查源文件是否存在。
302. 检查源文件的后缀是否为.zip。
313. 检查待压缩的文件路径是否存在,并且路径是否在正确的沙箱路径下。
32
33## 900002 传入的目标文件错误
34
35**错误信息**
36
37The input destination file is invalid.
38
39**错误描述**
40
41当调用compressFile或decompressFile接口时,传入目标文件无效。
42
43**可能原因**
44
451. 当调用compressFile接口时,传入的目标文件路径无效,如不存在的沙箱路径。
462. 当调用decompressFile接口时,传入的目标目录不存在。
47
48**处理步骤**
49
501. 检查目标文件路径是否正确,如果不正确,填写正确的沙箱路径。
512. 检查目标文件目录是否存在,如果不存在,新建这个路径。
52
53## 900003 传入的源文件格式错误或者已损坏
54
55**错误信息**
56
57The input source file is not in ZIP format or is damaged.
58
59**错误描述**
60
61当调用decompressFile接口时,传入源文件的压缩格式有误或者已损坏。
62
63
64**可能原因**
65
661. 当调用decompressFile接口时,传入的源文件压缩格式有误。
672. 当调用decompressFile接口时,传入的源文件不完整或已损坏。
68
69**处理步骤**
70
711. 检查源文件压缩格式是否为ZIP格式。
722. 检查源文件是否完整,如果是网络下载的,需要确保文件下载完成后再调用decompress接口。
73
74## 17800002 传入的文件或访问模式错误
75
76**错误信息**
77
78No such file or access mode error.
79
80**错误描述**
81
82当调用gzopen或gzdopen接口时,传入的文件路径、文件描述符或文件访问模式错误。
83
84**可能原因**
85
861. 当调用gzopen接口时,传入的文件路径或文件访问模式错误。
872. 当调用gzdopen接口时,传入的文件描述符或文件访问模式错误。
88
89**处理步骤**
90
911. 检查gz文件路径或文件描述符是否正确,如果是新建gz文件的操作,需要确保文件访问模式为压缩模式(w或wb等)。
922. 检查文件访问模式,是否为"w"、"wb"、"r"、"rb"、"a"、"ab"等。
93
94## 17800004 压缩流或解压流错误
95
96**错误信息**
97
98Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure.
99
100**错误描述**
101
102当调用deflate或inflate等接口时,压缩流或解压流发生错误。
103
104**可能原因**
105
1061. 当调用deflate或inflate等接口时,未先使用deflateInit或inflateInit接口对压缩或解压流进行初始化。
1072. 当调用gzsetparams、gzclose或gzflush等接口时,传入的刷新模式错误或接口调用前,调用打开gz文件的相关接口时传入的文件访问模式错误。
108
109**处理步骤**
110
1111. 当调用deflate或inflate等接口前,先使用deflateInit或inflateInit接口对压缩或解压流进行初始化。
1122. 检查接口调用前,打开gz文件的相关接口是否未被调用或调用失败。
1133. 检查接口调用前,调用打开gz文件的相关接口时传入的访问模式是否与该接口匹配。例如gzprintf属于压缩操作接口,调用打开gz文件的相关接口时传入的访问模式需要为压缩模式(w或wb等)。
1144. 检查传入的枚举参数是否正确。
115
116## 17800005 传入的数据错误
117
118**错误信息**
119
120The input data is incorrect. For example, the data does not conform to the zlib compression format, the compressed data is corrupted, or the data is not compressed.
121
122**错误描述**
123
124当调用uncompress或uncompress2等接口时,传入的数据错误。
125
126**可能原因**
127
128当调用uncompress或uncompress2接口时,未先使用compress接口进行压缩。
129
130**处理步骤**
131
132先使用compress进行压缩后再通过uncompress2或uncompress进行解压。
133
134## 17800006 内存分配失败错误
135
136**错误信息**
137
138Memory allocation failed.
139
140**错误描述**
141
142当调用gzclose或gzclosew接口时,内存分配失败。
143
144**可能原因**
145
146在调用gzclose或gzclosew接口前,调用了gzsetparams接口,传入错误的压缩级别或压缩策略。
147
148**处理步骤**
149
150检查gzsetparams接口的调用,传入正确的压缩级别和压缩策略。
151
152## 17800007 传入的缓冲区错误
153
154**错误信息**
155
156The input buffer is incorrect, and the output buffer is too small to accommodate the compressed or decompressed data.
157
158**错误描述**
159
160当调用compress或compress2或uncompress或uncompress2接口时,传入的缓冲区错误。
161
162**可能原因**
163
1641. 当调用uncompress或uncompress2接口时,传入的输入buffer大小大于解压后输出buffer的大小。
1652. 当调用compress或compress2接口时,传入的输入buffer大小大于压缩后输出buffer的大小。
1663. 当调用compress或compress2或uncompress或uncompress2接口,传入的buffer大小为0。
167
168**处理步骤**
169
170增大对应buffer的大小。
171
172## 17800009 内部结构错误
173
174**错误信息**
175
176Internal structure error.
177
178**错误描述**
179
180当调用gzputc、gzwrite、gzread等接口时,传入的参数错误或接口调用前,调用打开gz文件的相关接口时传入的文件访问模式错误。
181
182**可能原因**
183
1841. 当调用接口前,打开gz文件的相关接口未被调用或调用失败。
1852. 当调用接口前,调用打开gz文件的相关接口时传入的文件访问模式错误。
1863. 当调用gzwrite接口时,传入的未压缩字节长度为0。
1874. 当调用gzfwrite或gzfread接口时,传入的数据块大小或数量为0。
1885. 当调用gzprintf接口时,传入的格式化描述符和纯文本为空字符串。
1896. 当调用gzgets接口时,传入空的ArrayBuffer。
1907. 当调用gzgetc接口时,gz文件为空文件。
191
192**处理步骤**
193
1941. 检查接口调用前,打开gz文件的相关接口是否未被调用或调用失败。
1952. 检查接口调用前,调用打开gz文件的相关接口时传入的访问模式是否与该接口匹配。例如gzgetc属于解压缩操作接口,调用打开gz文件的相关接口时传入的访问模式需要为解压缩模式(r或rb等)。
1963. 检查传入的参数是否正确。