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 17 18setTime(time : number, callback : AsyncCallback<void>) : 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<void> | 是 | 回调函数。 | 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 63 64setTime(time : number) : Promise<void> 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<void> | 无返回结果的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 112 113getCurrentTime(isNano: boolean, callback: AsyncCallback<number>): 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<number> | 是 | 回调函数,返回自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 154 155getCurrentTime(callback: AsyncCallback<number>): void 156 157获取自Unix纪元以来经过的时间,使用callback异步回调。 158 159**系统能力:** SystemCapability.MiscServices.Time 160 161**参数:** 162 163| 参数名 | 类型 | 必填 | 说明 | 164| -------- | ----------- | ---- | ---------------------------------- | 165| callback | AsyncCallback<number> | 是 | 回调函数,返回自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 195 196getCurrentTime(isNano?: boolean): Promise<number> 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<number> | 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 240 241getRealActiveTime(isNano: boolean, callback: AsyncCallback<number>): 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<number> | 是 | 回调函数,返回自系统启动以来经过的时间,但不包括度睡眠时间。 | 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 282 283getRealActiveTime(callback: AsyncCallback<number>): void 284 285获取自系统启动以来经过的时间,不包括深度睡眠时间,使用callback异步回调。 286 287**系统能力:** SystemCapability.MiscServices.Time 288 289**参数:** 290 291| 参数名 | 类型 | 必填 | 说明 | 292| -------- | -------------- | ---- | --------------------- | 293| callback | AsyncCallback<number> | 是 | 回调函数,返回自系统启动以来经过的时间,但不包括度睡眠时间。 | 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 323 324getRealActiveTime(isNano?: boolean): Promise<number> 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<number> | 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 368 369getRealTime(isNano: boolean, callback: AsyncCallback<number>): 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<number> | 是 | 回调函数,返回自系统启动以来经过的时间,包括深度睡眠时间。 | 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 410 411getRealTime(callback: AsyncCallback<number>): void 412 413获取自系统启动以来经过的时间,包括深度睡眠时间,使用callback异步回调。 414 415**系统能力:** SystemCapability.MiscServices.Time 416 417**参数:** 418 419| 参数名 | 类型 | 必填 | 说明 | 420| -------- | --------- | ---- | --------------------------- | 421| callback | AsyncCallback<number> | 是 | 回调函数,返回自系统启动以来经过的时间,包括深度睡眠时间。 | 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 451 452getRealTime(isNano?: boolean): Promise<number> 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<number> | 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 496 497setDate(date: Date, callback: AsyncCallback<void>): 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<void> | 是 | 回调函数。 | 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 541 542setDate(date: Date): Promise<void> 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<void> | 无返回结果的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 589 590getDate(callback: AsyncCallback<Date>): void 591 592获取当前系统日期,使用callback异步回调。 593 594**系统能力:** SystemCapability.MiscServices.Time 595 596**参数:** 597 598| 参数名 | 类型 | 必填 | 说明 | 599| -------- | -------------- | ---- | --------------------- | 600| callback | AsyncCallback<Date> | 是 | 回调函数,返回当前系统日期。 | 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 630 631getDate(): Promise<Date> 632 633获取当前系统日期,使用Promise异步回调。 634 635**系统能力:** SystemCapability.MiscServices.Time 636 637**返回值:** 638 639| 类型 | 说明 | 640| ------------------- | ----------------------------------------- | 641| Promise<Date> | 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 669 670setTimezone(timezone: string, callback: AsyncCallback<void>): 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<void> | 是 | 回调函数。 | 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 713 714setTimezone(timezone: string): Promise<void> 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<void> | 无返回结果的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 760 761getTimezone(callback: AsyncCallback<string>): void 762 763获取系统时区,使用callback异步回调。 764 765**系统能力:** SystemCapability.MiscServices.Time 766 767**参数:** 768 769| 参数名 | 类型 | 必填 | 说明 | 770| -------- | --------- | ---- | ------------------------ | 771| callback | AsyncCallback<string> | 是 | 回调函数,返回系统时区。具体可见[支持的系统时区](#支持的系统时区) 。 | 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 801 802getTimezone(): Promise<string> 803 804获取系统时区,使用Promise异步回调。 805 806**系统能力:** SystemCapability.MiscServices.Time 807 808**返回值:** 809 810| 类型 | 说明 | 811| --------------------- | ------------------------------------- | 812| Promise<string> | 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 |