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