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