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