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<number>): 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<number> | 是 | 回调函数,返回自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<number>): void 67 68获取自Unix纪元以来经过的时间,使用callback异步回调。 69 70**系统能力:** SystemCapability.MiscServices.Time 71 72**参数:** 73 74| 参数名 | 类型 | 必填 | 说明 | 75| -------- | ----------- | ---- | ---------------------------------- | 76| callback | AsyncCallback<number> | 是 | 回调函数,返回自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<number> 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<number> | 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<number>): 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<number> | 是 | 回调函数,返回自系统启动以来经过的时间,不包括深度睡眠时间。 | 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<number>): void 195 196获取自系统启动以来经过的时间,不包括深度睡眠时间,使用callback异步回调。 197 198**系统能力:** SystemCapability.MiscServices.Time 199 200**参数:** 201 202| 参数名 | 类型 | 必填 | 说明 | 203| -------- | -------------- | ---- | --------------------- | 204| callback | AsyncCallback<number> | 是 | 回调函数,返回自系统启动以来经过的时间,不包括深度睡眠时间。 | 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<number> 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<number> | 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<number>): 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<number> | 是 | 回调函数,返回自系统启动以来经过的时间,包括深度睡眠时间。 | 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<number>): void 323 324获取自系统启动以来经过的时间,包括深度睡眠时间,使用callback异步回调。 325 326**系统能力:** SystemCapability.MiscServices.Time 327 328**参数:** 329 330| 参数名 | 类型 | 必填 | 说明 | 331| -------- | --------- | ---- | --------------------------- | 332| callback | AsyncCallback<number> | 是 | 回调函数,返回自系统启动以来经过的时间,包括深度睡眠时间。 | 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<number> 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<number> | 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<Date>): void 409 410获取当前系统日期,使用callback异步回调。 411 412**系统能力:** SystemCapability.MiscServices.Time 413 414**参数:** 415 416| 参数名 | 类型 | 必填 | 说明 | 417| -------- | -------------- | ---- | --------------------- | 418| callback | AsyncCallback<Date> | 是 | 回调函数,返回当前系统日期。 | 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<Date> 450 451获取当前系统日期,使用Promise异步回调。 452 453**系统能力:** SystemCapability.MiscServices.Time 454 455**返回值:** 456 457| 类型 | 说明 | 458| ------------------- | ----------------------------------------- | 459| Promise<Date> | 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<string>): void 489 490获取系统时区,使用callback异步回调。 491 492**系统能力:** SystemCapability.MiscServices.Time 493 494**参数:** 495 496| 参数名 | 类型 | 必填 | 说明 | 497| -------- | --------- | ---- | ------------------------ | 498| callback | AsyncCallback<string> | 是 | 回调函数,返回系统时区。具体可见[支持的系统时区](#支持的系统时区) 。 | 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<string> 530 531获取系统时区,使用Promise异步回调。 532 533**系统能力:** SystemCapability.MiscServices.Time 534 535**返回值:** 536 537| 类型 | 说明 | 538| --------------------- | ------------------------------------- | 539| Promise<string> | 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<void>) : 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<void> | 是 | 回调函数。 | 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<void> 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<void> | 无返回结果的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<void>): 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<void> | 是 | 回调函数。 | 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<void> 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<void> | 无返回结果的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<void>): 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<void> | 是 | 回调函数。 | 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<void> 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<void> | 无返回结果的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 |