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