• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.systemTime (系统时间、时区)
2
3本模块主要由系统时间和系统时区功能组成。开发者可以设置、获取系统时间及系统时区。
4
5> **说明:**
6>
7> - 从API Version 9 开始,该模块接口不再维护,推荐使用新模块接口[@ohos.systemDateTime (系统时间、时区)](js-apis-system-date-time.md)
8> - 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
9
10## 导入模块
11
12```ts
13import systemTime from '@ohos.systemTime';
14```
15
16## systemTime.setTime<sup>(deprecated)</sup>
17
18setTime(time : number, callback : AsyncCallback&lt;void&gt;) : void
19
20设置系统时间,使用callback异步回调。
21
22**需要权限:** ohos.permission.SET_TIME
23
24**系统能力:** SystemCapability.MiscServices.Time
25
26**参数:**
27
28| 参数名   | 类型            | 必填 | 说明                                       |
29| -------- | ----------- | ---- | ---------------- |
30| time     | number                    | 是   | 目标时间戳(ms)。                         |
31| callback | AsyncCallback&lt;void&gt; | 是   | 回调函数。 |
32
33**错误码:**
34
35以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
36
37| 错误码ID | 错误信息                                                     |
38| -------- | ------------------------------------------------------------ |
39| -1       | The parameter check failed or permission denied or system error. |
40
41**示例:**
42
43```ts
44import { BusinessError } from '@ohos.base';
45
46// time对应的时间为2021-01-20 02:36:25
47let time = 1611081385000;
48try {
49  systemTime.setTime(time, (error: BusinessError) => {
50    if (error) {
51      console.info(`Failed to setting time. message: ${error.message}, code: ${error.code}`);
52      return;
53    }
54    console.info(`Succeeded in setting time`);
55  });
56} catch(e) {
57  let error = e as BusinessError;
58  console.info(`Failed to set time. message: ${error.message}, code: ${error.code}`);
59}
60```
61
62## systemTime.setTime<sup>(deprecated)</sup>
63
64setTime(time : number) : Promise&lt;void&gt;
65
66设置系统时间,使用Promise异步回调。
67
68**需要权限:** ohos.permission.SET_TIME
69
70**系统能力:** SystemCapability.MiscServices.Time
71
72**参数:**
73
74| 参数名 | 类型   | 必填 | 说明               |
75| ------ | ------ | ---- | ------------------ |
76| time   | number | 是   | 目标时间戳(ms)。 |
77
78**返回值:**
79
80| 类型                | 说明                      |
81| ------------------- | ------------------------- |
82| Promise&lt;void&gt; | 无返回结果的Promise对象。 |
83
84**错误码:**
85
86以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
87
88| 错误码ID | 错误信息                                                     |
89| -------- | ------------------------------------------------------------ |
90| -1       | The parameter check failed or permission denied or system error. |
91
92**示例:**
93
94```ts
95import { BusinessError } from '@ohos.base';
96
97// time对应的时间为2021-01-20 02:36:25
98let time = 1611081385000;
99try {
100  systemTime.setTime(time).then(() => {
101    console.info(`Succeeded in setting time.`);
102  }).catch((error: BusinessError) => {
103    console.info(`Failed to setting time. message: ${error.message}, code: ${error.code}`);
104  });
105} catch(e) {
106  let error = e as BusinessError;
107  console.info(`Failed to set time. message: ${error.message}, code: ${error.code}`);
108}
109```
110
111## systemTime.getCurrentTime<sup>(deprecated)</sup>
112
113getCurrentTime(isNano: boolean, callback: AsyncCallback&lt;number&gt;): void
114
115获取自Unix纪元以来经过的时间,使用callback异步回调。
116
117**系统能力:** SystemCapability.MiscServices.Time
118
119**参数:**
120
121| 参数名   | 类型       | 必填 | 说明                             |
122| -------- | -------------- | ---- | ------------------ |
123| isNano   | boolean                     | 是   | 返回结果是否为纳秒数。<br>- true:表示返回结果为纳秒数(ns)。 <br>- false:表示返回结果为毫秒数(ms)。 |
124| callback | AsyncCallback&lt;number&gt; | 是   | 回调函数,返回自Unix纪元以来经过的时间。         |
125
126**错误码:**
127
128以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
129
130| 错误码ID | 错误信息                                    |
131| -------- | ------------------------------------------- |
132| -1       | The parameter check failed or system error. |
133
134**示例:**
135
136```ts
137import { BusinessError } from '@ohos.base';
138
139try {
140  systemTime.getCurrentTime(true, (error: BusinessError, time: number) => {
141    if (error) {
142      console.info(`Failed to getting currentTime. message: ${error.message}, code: ${error.code}`);
143      return;
144    }
145    console.info(`Succeeded in getting currentTime: ${time}`);
146  });
147} catch(e) {
148  let error = e as BusinessError;
149  console.info(`Failed to get currentTime. message: ${error.message}, code: ${error.code}`);
150}
151```
152
153## systemTime.getCurrentTime<sup>(deprecated)</sup>
154
155getCurrentTime(callback: AsyncCallback&lt;number&gt;): void
156
157获取自Unix纪元以来经过的时间,使用callback异步回调。
158
159**系统能力:** SystemCapability.MiscServices.Time
160
161**参数:**
162
163| 参数名   | 类型               | 必填 | 说明                            |
164| -------- | ----------- | ---- | ---------------------------------- |
165| callback | AsyncCallback&lt;number&gt; | 是   | 回调函数,返回自Unix纪元以来经过的时间。         |
166
167**错误码:**
168
169以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
170
171| 错误码ID | 错误信息                                    |
172| -------- | ------------------------------------------- |
173| -1       | The parameter check failed or system error. |
174
175**示例:**
176
177```ts
178import { BusinessError } from '@ohos.base';
179
180try {
181  systemTime.getCurrentTime((error: BusinessError, time: number) => {
182    if (error) {
183      console.info(`Failed to getting currentTime. message: ${error.message}, code: ${error.code}`);
184      return;
185    }
186    console.info(`Succeeded in getting currentTime : ${time}`);
187  });
188} catch(e) {
189  let error = e as BusinessError;
190  console.info(`Failed to get currentTime. message: ${error.message}, code: ${error.code}`);
191}
192```
193
194## systemTime.getCurrentTime<sup>(deprecated)</sup>
195
196getCurrentTime(isNano?: boolean): Promise&lt;number&gt;
197
198获取自Unix纪元以来经过的时间,使用Promise异步回调。
199
200**系统能力:** SystemCapability.MiscServices.Time
201
202**参数:**
203
204| 参数名 | 类型    | 必填 | 说明                     |
205| ------ | ------- | ---- | ------------------------- |
206| isNano | boolean | 否   | 返回结果是否为纳秒数,默认值为false。<br/>默认值为false。<br/>- true:表示返回结果为纳秒数(ns)。 <br/>- false:表示返回结果为毫秒数(ms)。 |
207
208**返回值:**
209
210| 类型        | 说明                               |
211| --------------------- | --------------------------- |
212| Promise&lt;number&gt; | Promise对象,返回自Unix纪元以来经过的时间。 |
213
214**错误码:**
215
216以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
217
218| 错误码ID | 错误信息                                    |
219| -------- | ------------------------------------------- |
220| -1       | The parameter check failed or system error. |
221
222**示例:**
223
224```ts
225import { BusinessError } from '@ohos.base';
226
227try {
228  systemTime.getCurrentTime().then((time: number) => {
229    console.info(`Succeeded in getting currentTime : ${time}`);
230  }).catch((error: BusinessError) => {
231    console.info(`Failed to getting currentTime. message: ${error.message}, code: ${error.code}`);
232  });
233} catch(e) {
234  let error = e as BusinessError;
235  console.info(`Failed to get currentTime. message: ${error.message}, code: ${error.code}`);
236}
237```
238
239## systemTime.getRealActiveTime<sup>(deprecated)</sup>
240
241getRealActiveTime(isNano: boolean, callback: AsyncCallback&lt;number&gt;): void
242
243获取自系统启动以来经过的时间,不包括深度睡眠时间,使用callback异步回调。
244
245**系统能力:** SystemCapability.MiscServices.Time
246
247**参数:**
248
249| 参数名   | 类型                        | 必填 | 说明   |
250| -------- | ---------- | ---- | -------------------------- |
251| isNano   | boolean                     | 是   | 返回结果是否为纳秒数。<br/>- true:表示返回结果为纳秒数(ns)。 <br/>- false:表示返回结果为毫秒数(ms)。 |
252| callback | AsyncCallback&lt;number&gt; | 是   | 回调函数,返回自系统启动以来经过的时间,但不包括度睡眠时间。 |
253
254**错误码:**
255
256以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
257
258| 错误码ID | 错误信息                                    |
259| -------- | ------------------------------------------- |
260| -1       | The parameter check failed or system error. |
261
262**示例:**
263
264```ts
265import { BusinessError } from '@ohos.base';
266
267try {
268  systemTime.getRealActiveTime(true, (error: BusinessError, time: number) => {
269    if (error) {
270      console.info(`Failed to getting real active time. message: ${error.message}, code: ${error.code}`);
271      return;
272    }
273    console.info(`Succeeded in getting real active time : ${time}`);
274  });
275} catch(e) {
276  let error = e as BusinessError;
277  console.info(`Failed to get real active time. message: ${error.message}, code: ${error.code}`);
278}
279```
280
281## systemTime.getRealActiveTime<sup>(deprecated)</sup>
282
283getRealActiveTime(callback: AsyncCallback&lt;number&gt;): void
284
285获取自系统启动以来经过的时间,不包括深度睡眠时间,使用callback异步回调。
286
287**系统能力:** SystemCapability.MiscServices.Time
288
289**参数:**
290
291| 参数名   | 类型                        | 必填 | 说明    |
292| -------- | -------------- | ---- | --------------------- |
293| callback | AsyncCallback&lt;number&gt; | 是   | 回调函数,返回自系统启动以来经过的时间,但不包括度睡眠时间。 |
294
295**错误码:**
296
297以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
298
299| 错误码ID | 错误信息                                    |
300| -------- | ------------------------------------------- |
301| -1       | The parameter check failed or system error. |
302
303**示例:**
304
305```ts
306import { BusinessError } from '@ohos.base';
307
308try {
309  systemTime.getRealActiveTime((error: BusinessError, time: number) => {
310    if (error) {
311      console.info(`Failed to getting real active time. message: ${error.message}, code: ${error.code}`);
312      return;
313    }
314    console.info(`Succeeded in getting real active time : ${time}`);
315  });
316} catch(e) {
317  let error = e as BusinessError;
318  console.info(`Failed to get real active time. message: ${error.message}, code: ${error.code}`);
319}
320```
321
322## systemTime.getRealActiveTime<sup>(deprecated)</sup>
323
324getRealActiveTime(isNano?: boolean): Promise&lt;number&gt;
325
326获取自系统启动以来经过的时间,不包括深度睡眠时间,使用Promise异步回调。
327
328**系统能力:** SystemCapability.MiscServices.Time
329
330**参数:**
331
332| 参数名 | 类型    | 必填 | 说明                              |
333| ------ | ------- | ---- | ----------------------------------- |
334| isNano | boolean | 否   | 返回结果是否为纳秒数,默认值为false。<br/>默认值为false。<br/>- true:表示返回结果为纳秒数(ns)。 <br/>- false:表示返回结果为毫秒数(ms)。 |
335
336**返回值:**
337
338| 类型                  | 说明         |
339| -------------- | -------------------------------- |
340| Promise&lt;number&gt; | Promise对象,返回自系统启动以来经过的时间,但不包括深度睡眠时间。 |
341
342**错误码:**
343
344以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
345
346| 错误码ID | 错误信息                                    |
347| -------- | ------------------------------------------- |
348| -1       | The parameter check failed or system error. |
349
350**示例:**
351
352```ts
353import { BusinessError } from '@ohos.base';
354
355try {
356  systemTime.getRealActiveTime().then((time: number) => {
357    console.info(`Succeeded in getting real active time : ${time}`);
358  }).catch((error: BusinessError) => {
359    console.info(`Failed to getting real active time. message: ${error.message}, code: ${error.code}`);
360  });
361} catch(e) {
362  let error = e as BusinessError;
363  console.info(`Failed to get real active time. message: ${error.message}, code: ${error.code}`);
364}
365```
366
367## systemTime.getRealTime<sup>(deprecated)</sup>
368
369getRealTime(isNano: boolean, callback: AsyncCallback&lt;number&gt;): void
370
371获取自系统启动以来经过的时间,包括深度睡眠时间,使用callback异步回调。
372
373**系统能力:** SystemCapability.MiscServices.Time
374
375**参数:**
376
377| 参数名   | 类型                        | 必填 | 说明   |
378| -------- | --------------- | ---- | ------------------------------- |
379| isNano   | boolean                     | 是   | 返回结果是否为纳秒数。<br/>- true:表示返回结果为纳秒数(ns)。 <br/>- false:表示返回结果为毫秒数(ms)。 |
380| callback | AsyncCallback&lt;number&gt; | 是   | 回调函数,返回自系统启动以来经过的时间,包括深度睡眠时间。   |
381
382**错误码:**
383
384以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
385
386| 错误码ID | 错误信息                                    |
387| -------- | ------------------------------------------- |
388| -1       | The parameter check failed or system error. |
389
390**示例:**
391
392```ts
393import { BusinessError } from '@ohos.base';
394
395try {
396  systemTime.getRealTime(true, (error: BusinessError, time: number) => {
397    if (error) {
398      console.info(`Failed to getting real time. message: ${error.message}, code: ${error.code}`);
399      return;
400    }
401    console.info(`Succeeded in getting real time : ${time}`);
402  });
403} catch(e) {
404  let error = e as BusinessError;
405  console.info(`Failed to get real time. message: ${error.message}, code: ${error.code}`);
406}
407```
408
409## systemTime.getRealTime<sup>(deprecated)</sup>
410
411getRealTime(callback: AsyncCallback&lt;number&gt;): void
412
413获取自系统启动以来经过的时间,包括深度睡眠时间,使用callback异步回调。
414
415**系统能力:** SystemCapability.MiscServices.Time
416
417**参数:**
418
419| 参数名   | 类型                        | 必填 | 说明      |
420| -------- | --------- | ---- | --------------------------- |
421| callback | AsyncCallback&lt;number&gt; | 是   | 回调函数,返回自系统启动以来经过的时间,包括深度睡眠时间。   |
422
423**错误码:**
424
425以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
426
427| 错误码ID | 错误信息                                    |
428| -------- | ------------------------------------------- |
429| -1       | The parameter check failed or system error. |
430
431**示例:**
432
433```ts
434import { BusinessError } from '@ohos.base';
435
436try {
437  systemTime.getRealTime((error: BusinessError, time: number) => {
438    if (error) {
439      console.info(`Failed to getting real time. message: ${error.message}, code: ${error.code}`);
440      return;
441    }
442    console.info(`Succeeded in getting real time : ${time}`);
443  });
444} catch(e) {
445  let error = e as BusinessError;
446  console.info(`Failed to get real time. message: ${error.message}, code: ${error.code}`);
447}
448```
449
450## systemTime.getRealTime<sup>(deprecated)</sup>
451
452getRealTime(isNano?: boolean): Promise&lt;number&gt;
453
454获取自系统启动以来经过的时间,包括深度睡眠时间,使用Promise异步回调。
455
456**系统能力:** SystemCapability.MiscServices.Time
457
458**参数:**
459
460| 参数名 | 类型    | 必填 | 说明                               |
461| ------ | ------- | ---- | ------------------------------- |
462| isNano | boolean | 否   | 返回结果是否为纳秒数,默认值为false。<br/>默认值为false。<br/>- true:表示返回结果为纳秒数(ns)。 <br/>- false:表示返回结果为毫秒数(ms)。 |
463
464**返回值:**
465
466| 类型                  | 说明       |
467| --------------------- | ------------------------------- |
468| Promise&lt;number&gt; | Promise对象,返回自系统启动以来经过的时间,包括深度睡眠时间。 |
469
470**错误码:**
471
472以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
473
474| 错误码ID | 错误信息                                    |
475| -------- | ------------------------------------------- |
476| -1       | The parameter check failed or system error. |
477
478**示例:**
479
480```ts
481import { BusinessError } from '@ohos.base';
482
483try {
484  systemTime.getRealTime().then((time: number) => {
485    console.info(`Succeeded in getting real time : ${time}`);
486  }).catch((error: BusinessError) => {
487    console.info(`Failed to getting real time. message: ${error.message}, code: ${error.code}`);
488  });
489} catch(e) {
490  let error = e as BusinessError;
491  console.info(`Failed to get real time. message: ${error.message}, code: ${error.code}`);
492}
493```
494
495## systemTime.setDate<sup>(deprecated)</sup>
496
497setDate(date: Date, callback: AsyncCallback&lt;void&gt;): void
498
499设置系统日期,使用callback异步回调。
500
501**需要权限:** ohos.permission.SET_TIME
502
503**系统能力:** SystemCapability.MiscServices.Time
504
505**参数:**
506
507| 参数名   | 类型                      | 必填 | 说明             |
508| -------- | ------------- | ---- | --------------------- |
509| date     | Date                      | 是   | 目标日期。                                 |
510| callback | AsyncCallback&lt;void&gt; | 是   | 回调函数。 |
511
512**错误码:**
513
514以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
515
516| 错误码ID | 错误信息                                                     |
517| -------- | ------------------------------------------------------------ |
518| -1       | The parameter check failed or permission denied or system error. |
519
520**示例:**
521
522```ts
523import { BusinessError } from '@ohos.base';
524
525let date = new Date();
526try {
527  systemTime.setDate(date, (error: BusinessError) => {
528    if (error) {
529      console.info(`Failed to setting date. message: ${error.message}, code: ${error.code}`);
530      return;
531    }
532    console.info(`Succeeded in setting date.`);
533  });
534} catch(e) {
535  let error = e as BusinessError;
536  console.info(`Failed to set date. message: ${error.message}, code: ${error.code}`);
537}
538```
539
540## systemTime.setDate<sup>(deprecated)</sup>
541
542setDate(date: Date): Promise&lt;void&gt;
543
544设置系统日期,使用Promise异步回调。
545
546**需要权限:** ohos.permission.SET_TIME
547
548**系统能力:** SystemCapability.MiscServices.Time
549
550**参数:**
551
552| 参数名 | 类型 | 必填 | 说明       |
553| ------ | ---- | ---- | ---------- |
554| date   | Date | 是   | 目标日期。 |
555
556**返回值:**
557
558| 类型                | 说明                 |
559| ------------------- | -------------------- |
560| Promise&lt;void&gt; | 无返回结果的Promise对象。 |
561
562**错误码:**
563
564以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
565
566| 错误码ID | 错误信息                                                     |
567| -------- | ------------------------------------------------------------ |
568| -1       | The parameter check failed or permission denied or system error. |
569
570**示例:**
571
572```ts
573import { BusinessError } from '@ohos.base';
574
575let date = new Date();
576try {
577  systemTime.setDate(date).then(() => {
578    console.info(`Succeeded in setting date.`);
579  }).catch((error: BusinessError) => {
580    console.info(`Failed to setting date. message: ${error.message}, code: ${error.code}`);
581  });
582} catch(e) {
583  let error = e as BusinessError;
584  console.info(`Failed to set date. message: ${error.message}, code: ${error.code}`);
585}
586```
587
588## systemTime.getDate<sup>(deprecated)</sup>
589
590getDate(callback: AsyncCallback&lt;Date&gt;): void
591
592获取当前系统日期,使用callback异步回调。
593
594**系统能力:** SystemCapability.MiscServices.Time
595
596**参数:**
597
598| 参数名   | 类型           | 必填 | 说明                   |
599| -------- | -------------- | ---- | --------------------- |
600| callback | AsyncCallback&lt;Date&gt; | 是   | 回调函数,返回当前系统日期。 |
601
602**错误码:**
603
604以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
605
606| 错误码ID | 错误信息                                    |
607| -------- | ------------------------------------------- |
608| -1       | The parameter check failed or system error. |
609
610**示例:**
611
612```ts
613import { BusinessError } from '@ohos.base';
614
615try {
616  systemTime.getDate((error: BusinessError, date: Date) => {
617    if (error) {
618      console.info(`Failed to get date. message: ${error.message}, code: ${error.code}`);
619      return;
620    }
621    console.info(`Succeeded in get date : ${date}`);;
622  });
623} catch(e) {
624  let error = e as BusinessError;
625  console.info(`Failed to get date. message: ${error.message}, code: ${error.code}`);
626}
627```
628
629## systemTime.getDate<sup>(deprecated)</sup>
630
631getDate(): Promise&lt;Date&gt;
632
633获取当前系统日期,使用Promise异步回调。
634
635**系统能力:** SystemCapability.MiscServices.Time
636
637**返回值:**
638
639| 类型                | 说明                                      |
640| ------------------- | ----------------------------------------- |
641| Promise&lt;Date&gt; | Promise对象,返回当前系统日期。 |
642
643**错误码:**
644
645以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
646
647| 错误码ID | 错误信息                                    |
648| -------- | ------------------------------------------- |
649| -1       | The parameter check failed or system error. |
650
651**示例:**
652
653```ts
654import { BusinessError } from '@ohos.base';
655
656try {
657  systemTime.getDate().then((date: Date) => {
658    console.info(`Succeeded in getting date : ${date}`);
659  }).catch((error: BusinessError) => {
660    console.info(`Failed to getting date. message: ${error.message}, code: ${error.code}`);
661  });
662} catch(e) {
663  let error = e as BusinessError;
664  console.info(`Failed to get date. message: ${error.message}, code: ${error.code}`);
665}
666```
667
668## systemTime.setTimezone<sup>(deprecated)</sup>
669
670setTimezone(timezone: string, callback: AsyncCallback&lt;void&gt;): void
671
672设置系统时区,使用callback异步回调。
673
674**需要权限:** ohos.permission.SET_TIME_ZONE
675
676**系统能力:** SystemCapability.MiscServices.Time
677
678**参数:**
679
680| 参数名   | 类型              | 必填 | 说明                  |
681| -------- | ------------- | ---- | -------------------------- |
682| timezone | string                    | 是   | 系统时区。 具体可见[支持的系统时区](#支持的系统时区) 。        |
683| callback | AsyncCallback&lt;void&gt; | 是   | 回调函数。 |
684
685**错误码:**
686
687以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
688
689| 错误码ID | 错误信息                                                     |
690| -------- | ------------------------------------------------------------ |
691| -1       | The parameter check failed or permission denied or system error. |
692
693**示例:**
694
695```ts
696import { BusinessError } from '@ohos.base';
697
698try {
699  systemTime.setTimezone('Asia/Shanghai', (error: BusinessError) => {
700    if (error) {
701      console.info(`Failed to setting timezone. message: ${error.message}, code: ${error.code}`);
702      return;
703    }
704    console.info(`Succeeded in setting timezone.`);
705  });
706} catch(e) {
707  let error = e as BusinessError;
708  console.info(`Failed to set timezone. message: ${error.message}, code: ${error.code}`);
709}
710```
711
712## systemTime.setTimezone<sup>(deprecated)</sup>
713
714setTimezone(timezone: string): Promise&lt;void&gt;
715
716设置系统时区,使用Promise异步回调。
717
718**需要权限:** ohos.permission.SET_TIME_ZONE
719
720**系统能力:** SystemCapability.MiscServices.Time
721
722**参数:**
723
724| 参数名   | 类型   | 必填 | 说明       |
725| -------- | ------ | ---- | ---------- |
726| timezone | string | 是   | 系统时区。具体可见[支持的系统时区](#支持的系统时区) 。 |
727
728**返回值:**
729
730| 类型                | 说明                 |
731| ------------------- | -------------------- |
732| Promise&lt;void&gt; | 无返回结果的Promise对象。 |
733
734**错误码:**
735
736以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
737
738| 错误码ID | 错误信息                                                     |
739| -------- | ------------------------------------------------------------ |
740| -1       | The parameter check failed or permission denied or system error. |
741
742**示例:**
743
744```ts
745import { BusinessError } from '@ohos.base';
746
747try {
748  systemTime.setTimezone('Asia/Shanghai').then(() => {
749    console.info(`Succeeded in setting timezone.`);
750  }).catch((error: BusinessError) => {
751    console.info(`Failed to setting timezone. message: ${error.message}, code: ${error.code}`);
752  });
753} catch(e) {
754  let error = e as BusinessError;
755  console.info(`Failed to set timezone. message: ${error.message}, code: ${error.code}`);
756}
757```
758
759## systemTime.getTimezone<sup>(deprecated)</sup>
760
761getTimezone(callback: AsyncCallback&lt;string&gt;): void
762
763获取系统时区,使用callback异步回调。
764
765**系统能力:** SystemCapability.MiscServices.Time
766
767**参数:**
768
769| 参数名   | 类型              | 必填 | 说明                 |
770| -------- | --------- | ---- | ------------------------ |
771| callback | AsyncCallback&lt;string&gt; | 是   | 回调函数,返回系统时区。具体可见[支持的系统时区](#支持的系统时区) 。 |
772
773**错误码:**
774
775以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
776
777| 错误码ID | 错误信息                                    |
778| -------- | ------------------------------------------- |
779| -1       | The parameter check failed or system error. |
780
781**示例:**
782
783```ts
784import { BusinessError } from '@ohos.base';
785
786try {
787  systemTime.getTimezone((error: BusinessError, data: string) => {
788    if (error) {
789      console.info(`Failed to get timezone. message: ${error.message}, code: ${error.code}`);
790      return;
791    }
792    console.info(`Succeeded in get timezone : ${data}`);;
793  });
794} catch(e) {
795  let error = e as BusinessError;
796  console.info(`Failed to get timezone. message: ${error.message}, code: ${error.code}`);
797}
798```
799
800## systemTime.getTimezone<sup>(deprecated)</sup>
801
802getTimezone(): Promise&lt;string&gt;
803
804获取系统时区,使用Promise异步回调。
805
806**系统能力:** SystemCapability.MiscServices.Time
807
808**返回值:**
809
810| 类型                  | 说明                                  |
811| --------------------- | ------------------------------------- |
812| Promise&lt;string&gt; | Promise对象,返回系统时区。具体可见[支持的系统时区](#支持的系统时区) 。 |
813
814**错误码:**
815
816以下错误码的详细介绍请参见[时间时区错误码](../errorcodes/errorcode-time.md)。
817
818| 错误码ID | 错误信息                                    |
819| -------- | ------------------------------------------- |
820| -1       | The parameter check failed or system error. |
821
822**示例:**
823
824```ts
825import { BusinessError } from '@ohos.base';
826
827try {
828  systemTime.getTimezone().then((data: string) => {
829    console.info(`Succeeded in getting timezone: ${data}`);
830  }).catch((error: BusinessError) => {
831    console.info(`Failed to getting timezone. message: ${error.message}, code: ${error.code}`);
832  });
833} catch(e) {
834  let error = e as BusinessError;
835  console.info(`Failed to get timezone. message: ${error.message}, code: ${error.code}`);
836}
837```
838
839## 支持的系统时区
840
841支持的系统时区及各时区与0时区相比的偏移量(单位:h)可见下表。
842
843| 时区                           | 偏移量         |
844| ------------------------------ | --------------------- |
845| Antarctica/McMurdo             | 12                    |
846| America/Argentina/Buenos_Aires | -3                    |
847| Australia/Sydney               | 10                    |
848| America/Noronha                | -2                    |
849| America/St_Johns               | -3                    |
850| Africa/Kinshasa                | 1                     |
851| America/Santiago               | -3                    |
852| Asia/Shanghai                  | 8                     |
853| Asia/Nicosia                   | 3                     |
854| Europe/Berlin                  | 2                     |
855| America/Guayaquil              | -5                    |
856| Europe/Madrid                  | 2                     |
857| Pacific/Pohnpei                | 11                    |
858| America/Godthab                | -2                    |
859| Asia/Jakarta                   | 7                     |
860| Pacific/Tarawa                 | 12                    |
861| Asia/Almaty                    | 6                     |
862| Pacific/Majuro                 | 12                    |
863| Asia/Ulaanbaatar               | 8                     |
864| America/Mexico_City            | -5                    |
865| Asia/Kuala_Lumpur              | 8                     |
866| Pacific/Auckland               | 12                    |
867| Pacific/Tahiti                 | -10                   |
868| Pacific/Port_Moresby           | 10                    |
869| Asia/Gaza                      | 3                     |
870| Europe/Lisbon                  | 1                     |
871| Europe/Moscow                  | 3                     |
872| Europe/Kiev                    | 3                     |
873| Pacific/Wake                   | 12                    |
874| America/New_York               | -4                    |
875| Asia/Tashkent                  | 5                     |