1# @ohos.app.ability.dataUriUtils (DataUriUtils模块)
2
3DataUriUtils模块提供用于处理uri对象的能力,包括获取、绑定、删除和更新指定uri对象的路径末尾的ID。
4
5> **说明:**
6>
7> 本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8
9## 导入模块
10
11```ts
12import { dataUriUtils } from '@kit.AbilityKit';
13```
14
15## dataUriUtils.getId
16
17getId(uri: string): number
18
19获取指定uri路径末尾的ID。
20
21**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
22
23**参数:**
24
25| 参数名 | 类型   | 必填 | 说明                        |
26| ---- | ------ | ---- | --------------------------- |
27| uri  | string | 是   | 表示uri对象。 |
28
29**返回值:**
30
31| 类型   | 说明                     |
32| ------ | ------------------------ |
33| number | 返回uri路径末尾的ID。 |
34
35**错误码**:
36
37以下错误码详细介绍请参考[通用错误码](../errorcode-universal.md)。
38
39| 错误码ID | 错误信息 |
40| ------- | -------- |
41| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. |
42
43**示例:**
44
45```ts
46import { dataUriUtils } from '@kit.AbilityKit';
47
48try {
49  let id = dataUriUtils.getId('com.example.dataUriUtils/1221');
50  console.info(`get id: ${id}`);
51} catch(err) {
52  console.error(`get id err ,check the uri ${err}`);
53}
54```
55
56
57
58## dataUriUtils.attachId
59
60attachId(uri: string, id: number): string
61
62将ID附加到uri的路径末尾。
63
64**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
65
66**参数:**
67
68| 参数名 | 类型   | 必填 | 说明                        |
69| ---- | ------ | ---- | --------------------------- |
70| uri  | string | 是   | 表示uri对象。 |
71| id   | number | 是   | 表示要附加的ID。            |
72
73**返回值:**
74
75| 类型   | 说明                  |
76| ------ | --------------------- |
77| string | 返回附加ID之后的uri对象。 |
78
79**错误码**:
80
81以下错误码详细介绍请参考[通用错误码](../errorcode-universal.md)。
82
83| 错误码ID | 错误信息 |
84| ------- | -------- |
85| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. |
86
87**示例:**
88
89```ts
90import { dataUriUtils } from '@kit.AbilityKit';
91import { BusinessError } from '@kit.BasicServicesKit';
92
93let id = 1122;
94try {
95  let uri = dataUriUtils.attachId(
96    'com.example.dataUriUtils',
97    id,
98  );
99  console.info(`attachId the uri is: ${uri}`);
100} catch (err) {
101  console.error(`get id err, code: ${JSON.stringify((err as BusinessError).code)}, msg: ${JSON.stringify((err as BusinessError).message)}`);
102}
103```
104
105
106
107## dataUriUtils.deleteId
108
109deleteId(uri: string): string
110
111删除指定uri路径末尾的ID。
112
113**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
114
115**参数:**
116
117| 参数名 | 类型   | 必填 | 说明                        |
118| ---- | ------ | ---- | --------------------------- |
119| uri  | string | 是   | 表示要从中删除ID的uri对象。 |
120
121**返回值:**
122
123| 类型   | 说明                |
124| ------ | ------------------- |
125| string | 返回删除ID之后的uri对象。 |
126
127**错误码**:
128
129以下错误码详细介绍请参考[通用错误码](../errorcode-universal.md)。
130
131| 错误码ID | 错误信息 |
132| ------- | -------- |
133| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. |
134
135**示例:**
136
137```ts
138import { dataUriUtils } from '@kit.AbilityKit';
139import { BusinessError } from '@kit.BasicServicesKit';
140
141try {
142  let uri = dataUriUtils.deleteId('com.example.dataUriUtils/1221');
143  console.info(`delete id with the uri is: ${uri}`);
144} catch(err) {
145  console.error(`delete id err, code: ${JSON.stringify((err as BusinessError).code)}, msg: ${JSON.stringify((err as BusinessError).message)}`);
146}
147```
148
149
150
151## dataUriUtils.updateId
152
153updateId(uri: string, id: number): string
154
155更新指定uri中的ID。
156
157**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
158
159**参数:**
160
161| 参数名 | 类型   | 必填 | 说明                |
162| ---- | ------ | ---- | ------------------- |
163| uri  | string | 是   | 表示uri对象 |
164| id   | number | 是   | 表示要更新的ID            |
165
166**返回值:**
167
168| 类型   | 说明            |
169| ------ | --------------- |
170| string | 返回更新ID之后的uri对象。 |
171
172**错误码**:
173
174以下错误码详细介绍请参考[通用错误码](../errorcode-universal.md)。
175
176| 错误码ID | 错误信息 |
177| ------- | -------- |
178| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. |
179
180**示例:**
181
182```ts
183import { dataUriUtils } from '@kit.AbilityKit';
184import { BusinessError } from '@kit.BasicServicesKit';
185
186try {
187  let id = 1122;
188  let uri = dataUriUtils.updateId(
189    'com.example.dataUriUtils/1221',
190    id
191  );
192} catch (err) {
193  console.error(`update id err, code: ${JSON.stringify((err as BusinessError).code)}, msg: ${JSON.stringify((err as BusinessError).message)}`);
194}
195```
196
197