1# @ohos.i18n (国际化-I18n) 2 3 本模块提供系统相关的或者增强的国际化能力,包括区域管理、电话号码处理、日历等,相关接口为ECMA 402标准中未定义的补充接口。 4[Intl模块](js-apis-intl.md)提供了ECMA 402标准定义的基础国际化接口,与本模块共同使用可提供完整地国际化支持能力。 5 6> **说明:** 7> - 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8> 9> - I18N模块包含国际化能力增强接口(未在ECMA 402中定义),包括区域管理、电话号码处理、日历等,国际化基础能力请参考[Intl模块](js-apis-intl.md)。 10 11 12## 导入模块 13 14```ts 15import I18n from '@ohos.i18n'; 16``` 17 18 19## System<sup>9+</sup> 20 21### getDisplayCountry<sup>9+</sup> 22 23static getDisplayCountry(country: string, locale: string, sentenceCase?: boolean): string 24 25获取指定国家的本地化显示文本。 26 27**系统能力**:SystemCapability.Global.I18n 28 29**参数:** 30 31| 参数名 | 类型 | 必填 | 说明 | 32| ------------ | ------- | ---- | ---------------- | 33| country | string | 是 | 指定国家。 | 34| locale | string | 是 | 显示指定国家的区域ID。 | 35| sentenceCase | boolean | 否 | 本地化显示文本是否要首字母大写。默认值:true。 | 36 37**返回值:** 38 39| 类型 | 说明 | 40| ------ | ------------- | 41| string | 指定国家的本地化显示文本。 | 42 43**错误码:** 44 45以下错误码的详细介绍请参见[ohos.i18n错误码](../errorcodes/errorcode-i18n.md)。 46 47| 错误码ID | 错误信息 | 48| ------ | ---------------------- | 49| 890001 | param value not valid | 50 51**示例:** 52 ```ts 53 import { BusinessError } from '@ohos.base'; 54 55 try { 56 let displayCountry: string = I18n.System.getDisplayCountry("zh-CN", "en-GB"); // displayCountry = "China" 57 } catch (error) { 58 let err: BusinessError = error as BusinessError; 59 console.error(`call System.getDisplayCountry failed, error code: ${err.code}, message: ${err.message}.`); 60 } 61 ``` 62 63### getDisplayLanguage<sup>9+</sup> 64 65static getDisplayLanguage(language: string, locale: string, sentenceCase?: boolean): string 66 67获取指定语言的本地化显示文本。 68 69**系统能力**:SystemCapability.Global.I18n 70 71**参数:** 72 73| 参数名 | 类型 | 必填 | 说明 | 74| ------------ | ------- | ---- | ---------------- | 75| language | string | 是 | 指定语言。 | 76| locale | string | 是 | 显示指定语言的区域ID。 | 77| sentenceCase | boolean | 否 | 本地化显示文本是否要首字母大写。默认值:true。 | 78 79**返回值:** 80 81| 类型 | 说明 | 82| ------ | ------------- | 83| string | 指定语言的本地化显示文本。 | 84 85**错误码:** 86 87以下错误码的详细介绍请参见[ohos.i18n错误码](../errorcodes/errorcode-i18n.md)。 88 89| 错误码ID | 错误信息 | 90| ------ | ---------------------- | 91| 890001 | param value not valid | 92 93**示例:** 94 ```ts 95 import { BusinessError } from '@ohos.base'; 96 97 try { 98 let displayLanguage: string = I18n.System.getDisplayLanguage("zh", "en-GB"); // displayLanguage = Chinese 99 } catch(error) { 100 let err: BusinessError = error as BusinessError; 101 console.error(`call System.getDisplayLanguage failed, error code: ${err.code}, message: ${err.message}.`); 102 } 103 ``` 104 105### getSystemLanguages<sup>9+</sup> 106 107static getSystemLanguages(): Array<string> 108 109获取系统支持的语言列表。语言的详细说明参见[实例化Locale对象](../../internationalization/intl-guidelines.md#开发步骤)。 110 111**系统能力**:SystemCapability.Global.I18n 112 113**返回值:** 114 115| 类型 | 说明 | 116| ------------------- | ------------ | 117| Array<string> | 系统支持的语言ID列表。 | 118 119**示例:** 120 ```ts 121 import { BusinessError } from '@ohos.base'; 122 123 try { 124 let systemLanguages: Array<string> = I18n.System.getSystemLanguages(); // [ "en-Latn-US", "zh-Hans" ] 125 } catch(error) { 126 let err: BusinessError = error as BusinessError; 127 console.error(`call System.getSystemLanguages failed, error code: ${err.code}, message: ${err.message}.`); 128 } 129 ``` 130 131### getSystemCountries<sup>9+</sup> 132 133static getSystemCountries(language: string): Array<string> 134 135获取针对输入语言系统支持的国家或地区列表。国家或地区的详细说明参见[实例化Locale对象](../../internationalization/intl-guidelines.md#开发步骤)。 136 137**系统能力**:SystemCapability.Global.I18n 138 139**参数:** 140 141| 参数名 | 类型 | 必填 | 说明 | 142| -------- | ------ | ---- | ----- | 143| language | string | 是 | 语言ID。 | 144 145**返回值:** 146 147| 类型 | 说明 | 148| ------------------- | ------------ | 149| Array<string> | 系统支持的区域ID列表。 | 150 151**错误码:** 152 153以下错误码的详细介绍请参见[ohos.i18n错误码](../errorcodes/errorcode-i18n.md)。 154 155| 错误码ID | 错误信息 | 156| ------ | ---------------------- | 157| 890001 | param value not valid | 158 159**示例:** 160 ```ts 161 import { BusinessError } from '@ohos.base'; 162 163 try { 164 let systemCountries: Array<string> = I18n.System.getSystemCountries('zh'); // systemCountries = [ "ZW", "YT", "YE", ..., "ER", "CN", "DE" ],共计240个国家或地区 165 } catch(error) { 166 let err: BusinessError = error as BusinessError; 167 console.error(`call System.getSystemCountries failed, error code: ${err.code}, message: ${err.message}.`); 168 } 169 ``` 170 171### isSuggested<sup>9+</sup> 172 173static isSuggested(language: string, region?: string): boolean 174 175判断当前语言和地区是否匹配。 176 177**系统能力**:SystemCapability.Global.I18n 178 179**参数:** 180 181| 参数名 | 类型 | 必填 | 说明 | 182| -------- | ------ | ---- | ------------- | 183| language | string | 是 | 合法的语言ID,例如zh。 | 184| region | string | 否 | 合法的地区ID,例如CN。默认值:使用SIM卡国家或地区。 | 185 186**返回值:** 187 188| 类型 | 说明 | 189| ------- | ---------------------------------------- | 190| boolean | 返回true,表示当前语言和地区匹配;返回false,表示当前语言和地区不匹配。 | 191 192**错误码:** 193 194以下错误码的详细介绍请参见[ohos.i18n错误码](../errorcodes/errorcode-i18n.md)。 195 196| 错误码ID | 错误信息 | 197| ------ | ---------------------- | 198| 890001 | param value not valid | 199 200**示例:** 201 ```ts 202 import { BusinessError } from '@ohos.base'; 203 204 try { 205 let res: boolean = I18n.System.isSuggested('zh', 'CN'); // res = true 206 } catch(error) { 207 let err: BusinessError = error as BusinessError; 208 console.error(`call System.isSuggested failed, error code: ${err.code}, message: ${err.message}.`); 209 } 210 ``` 211 212### getSystemLanguage<sup>9+</sup> 213 214static getSystemLanguage(): string 215 216获取系统语言。语言的详细说明参见[实例化Locale对象](../../internationalization/intl-guidelines.md#开发步骤)。 217 218**系统能力**:SystemCapability.Global.I18n 219 220**返回值:** 221 222| 类型 | 说明 | 223| ------ | ------- | 224| string | 系统语言ID。 | 225 226**示例:** 227 ```ts 228 import { BusinessError } from '@ohos.base'; 229 230 try { 231 let systemLanguage: string = I18n.System.getSystemLanguage(); // systemLanguage为当前系统语言 232 } catch(error) { 233 let err: BusinessError = error as BusinessError; 234 console.error(`call System.getSystemLanguage failed, error code: ${err.code}, message: ${err.message}.`); 235 } 236 ``` 237 238### setSystemLanguage<sup>9+</sup> 239 240static setSystemLanguage(language: string): void 241 242设置系统语言。当前调用该接口不支持系统界面语言的实时刷新。 243 244**系统接口**:此接口为系统接口。 245 246**需要权限**:ohos.permission.UPDATE_CONFIGURATION 247 248**系统能力**:SystemCapability.Global.I18n 249 250**参数:** 251 252| 参数名 | 类型 | 必填 | 说明 | 253| -------- | ------ | ---- | ----- | 254| language | string | 是 | 语言ID。 | 255 256**错误码:** 257 258以下错误码的详细介绍请参见[ohos.i18n错误码](../errorcodes/errorcode-i18n.md)。 259 260| 错误码ID | 错误信息 | 261| ------ | ---------------------- | 262| 890001 | param value not valid | 263 264**示例:** 265 ```ts 266 import { BusinessError } from '@ohos.base'; 267 268 try { 269 I18n.System.setSystemLanguage('zh'); // 设置系统当前语言为 "zh" 270 } catch(error) { 271 let err: BusinessError = error as BusinessError; 272 console.error(`call System.setSystemLanguage failed, error code: ${err.code}, message: ${err.message}.`); 273 } 274 ``` 275 276### getSystemRegion<sup>9+</sup> 277 278static getSystemRegion(): string 279 280获取系统地区。地区的详细说明参见[实例化Locale对象](../../internationalization/intl-guidelines.md#开发步骤)。 281 282**系统能力**:SystemCapability.Global.I18n 283 284**返回值:** 285 286| 类型 | 说明 | 287| ------ | ------- | 288| string | 系统地区ID。 | 289 290**示例:** 291 ```ts 292 import { BusinessError } from '@ohos.base'; 293 294 try { 295 let systemRegion: string = I18n.System.getSystemRegion(); // 获取系统当前地区设置 296 } catch(error) { 297 let err: BusinessError = error as BusinessError; 298 console.error(`call System.getSystemRegion failed, error code: ${err.code}, message: ${err.message}.`); 299 } 300 ``` 301 302### setSystemRegion<sup>9+</sup> 303 304static setSystemRegion(region: string): void 305 306设置系统区域。 307 308**系统接口**:此接口为系统接口。 309 310**需要权限**:ohos.permission.UPDATE_CONFIGURATION 311 312**系统能力**:SystemCapability.Global.I18n 313 314**参数:** 315 316| 参数名 | 类型 | 必填 | 说明 | 317| ------ | ------ | ---- | ----- | 318| region | string | 是 | 地区ID。 | 319 320**错误码:** 321 322以下错误码的详细介绍请参见[ohos.i18n错误码](../errorcodes/errorcode-i18n.md)。 323 324| 错误码ID | 错误信息 | 325| ------ | ---------------------- | 326| 890001 | param value not valid | 327 328**示例:** 329 ```ts 330 import { BusinessError } from '@ohos.base'; 331 332 try { 333 I18n.System.setSystemRegion('CN'); // 设置系统当前地区为 "CN" 334 } catch(error) { 335 let err: BusinessError = error as BusinessError; 336 console.error(`call System.setSystemRegion failed, error code: ${err.code}, message: ${err.message}.`); 337 } 338 ``` 339 340### getSystemLocale<sup>9+</sup> 341 342static getSystemLocale(): string 343 344获取系统区域。区域的详细说明参见[实例化Locale对象](../../internationalization/intl-guidelines.md#开发步骤)。 345 346**系统能力**:SystemCapability.Global.I18n 347 348**返回值:** 349 350| 类型 | 说明 | 351| ------ | ------- | 352| string | 系统区域ID。 | 353 354**示例:** 355 ```ts 356 import { BusinessError } from '@ohos.base'; 357 358 try { 359 let systemLocale: string = I18n.System.getSystemLocale(); // 获取系统当前Locale 360 } catch(error) { 361 let err: BusinessError = error as BusinessError; 362 console.error(`call System.getSystemLocale failed, error code: ${err.code}, message: ${err.message}.`); 363 } 364 ``` 365 366### setSystemLocale<sup>9+</sup> 367 368static setSystemLocale(locale: string): void 369 370设置系统Locale。 371 372**系统接口**:此接口为系统接口。 373 374**需要权限**:ohos.permission.UPDATE_CONFIGURATION 375 376**系统能力**:SystemCapability.Global.I18n 377 378**参数:** 379 380| 参数名 | 类型 | 必填 | 说明 | 381| ------ | ------ | ---- | --------------- | 382| locale | string | 是 | 指定区域ID,例如zh-CN。 | 383 384**错误码:** 385 386以下错误码的详细介绍请参见[ohos.i18n错误码](../errorcodes/errorcode-i18n.md)。 387 388| 错误码ID | 错误信息 | 389| ------ | ---------------------- | 390| 890001 | param value not valid | 391 392**示例:** 393 ```ts 394 import { BusinessError } from '@ohos.base'; 395 396 try { 397 I18n.System.setSystemLocale('zh-CN'); // 设置系统当前Locale为 "zh-CN" 398 } catch(error) { 399 let err: BusinessError = error as BusinessError; 400 console.error(`call System.setSystemLocale failed, error code: ${err.code}, message: ${err.message}.`); 401 } 402 ``` 403 404### is24HourClock<sup>9+</sup> 405 406static is24HourClock(): boolean 407 408判断系统时间是否为24小时制。 409 410**系统能力**:SystemCapability.Global.I18n 411 412**返回值:** 413 414| 类型 | 说明 | 415| ------- | ---------------------------------------- | 416| boolean | 返回true,表示系统24小时开关开启;返回false,表示系统24小时开关关闭。 | 417 418**示例:** 419 ```ts 420 import { BusinessError } from '@ohos.base'; 421 422 try { 423 let is24HourClock: boolean = I18n.System.is24HourClock(); // 系统24小时开关是否开启 424 } catch(error) { 425 let err: BusinessError = error as BusinessError; 426 console.error(`call System.is24HourClock failed, error code: ${err.code}, message: ${err.message}.`); 427 } 428 ``` 429 430### set24HourClock<sup>9+</sup> 431 432static set24HourClock(option: boolean): void 433 434设置系统时间为24小时。 435 436**系统接口**:此接口为系统接口。 437 438**需要权限**:ohos.permission.UPDATE_CONFIGURATION 439 440**系统能力**:SystemCapability.Global.I18n 441 442**参数:** 443 444| 参数名 | 类型 | 必填 | 说明 | 445| ------ | ------- | ---- | ---------------------------------------- | 446| option | boolean | 是 | option为true,表示开启系统24小时制开关;返回false,表示关闭系统24小时开关。 | 447 448**错误码:** 449 450以下错误码的详细介绍请参见[ohos.i18n错误码](../errorcodes/errorcode-i18n.md)。 451 452| 错误码ID | 错误信息 | 453| ------ | ---------------------- | 454| 890001 | param value not valid | 455 456**示例:** 457 ```ts 458 import { BusinessError } from '@ohos.base'; 459 460 // 将系统时间设置为24小时制 461 try { 462 I18n.System.set24HourClock(true); 463 } catch(error) { 464 let err: BusinessError = error as BusinessError; 465 console.error(`call System.set24HourClock failed, error code: ${err.code}, message: ${err.message}.`); 466 } 467 ``` 468 469### addPreferredLanguage<sup>9+</sup> 470 471static addPreferredLanguage(language: string, index?: number): void 472 473在系统偏好语言列表中的指定位置添加偏好语言。 474 475**系统接口**:此接口为系统接口。 476 477**需要权限**:ohos.permission.UPDATE_CONFIGURATION 478 479**系统能力**:SystemCapability.Global.I18n 480 481**参数:** 482 483| 参数名 | 类型 | 必填 | 说明 | 484| -------- | ------ | ---- | ---------- | 485| language | string | 是 | 待添加的偏好语言。 | 486| index | number | 否 | 偏好语言的添加位置。默认值:系统偏好语言列表长度。 | 487 488**错误码:** 489 490以下错误码的详细介绍请参见[ohos.i18n错误码](../errorcodes/errorcode-i18n.md)。 491 492| 错误码ID | 错误信息 | 493| ------ | ---------------------- | 494| 890001 | param value not valid | 495 496**示例:** 497 ```ts 498 import { BusinessError } from '@ohos.base'; 499 500 // 将语言zh-CN添加到系统偏好语言列表中 501 let language = 'zh-CN'; 502 let index = 0; 503 try { 504 I18n.System.addPreferredLanguage(language, index); // 将zh-CN添加到系统偏好语言列表的第1位 505 } catch(error) { 506 let err: BusinessError = error as BusinessError; 507 console.error(`call System.addPreferredLanguage failed, error code: ${err.code}, message: ${err.message}.`); 508 } 509 ``` 510 511### removePreferredLanguage<sup>9+</sup> 512 513static removePreferredLanguage(index: number): void 514 515删除系统偏好语言列表中指定位置的偏好语言。 516 517**系统接口**:此接口为系统接口。 518 519**需要权限**:ohos.permission.UPDATE_CONFIGURATION 520 521**系统能力**:SystemCapability.Global.I18n 522 523**参数:** 524 525| 参数名 | 类型 | 必填 | 说明 | 526| ----- | ------ | ---- | --------------------- | 527| index | number | 是 | 待删除偏好语言在系统偏好语言列表中的位置。 | 528 529**错误码:** 530 531以下错误码的详细介绍请参见[ohos.i18n错误码](../errorcodes/errorcode-i18n.md)。 532 533| 错误码ID | 错误信息 | 534| ------ | ---------------------- | 535| 890001 | param value not valid | 536 537**示例:** 538 ```ts 539 import { BusinessError } from '@ohos.base'; 540 541 // 删除系统偏好语言列表中的第一个偏好语言 542 let index: number = 0; 543 try { 544 I18n.System.removePreferredLanguage(index); 545 } catch(error) { 546 let err: BusinessError = error as BusinessError; 547 console.error(`call System.removePreferredLanguage failed, error code: ${err.code}, message: ${err.message}.`); 548 } 549 ``` 550 551### getPreferredLanguageList<sup>9+</sup> 552 553static getPreferredLanguageList(): Array<string> 554 555获取系统偏好语言列表。 556 557**系统能力**:SystemCapability.Global.I18n 558 559**返回值:** 560 561| 类型 | 说明 | 562| ------------------- | --------- | 563| Array<string> | 系统偏好语言列表。 | 564 565**示例:** 566 ```ts 567 import { BusinessError } from '@ohos.base'; 568 569 try { 570 let preferredLanguageList: Array<string> = I18n.System.getPreferredLanguageList(); // 获取系统当前偏好语言列表 571 } catch(error) { 572 let err: BusinessError = error as BusinessError; 573 console.error(`call System.getPreferredLanguageList failed, error code: ${err.code}, message: ${err.message}.`); 574 } 575 ``` 576 577### getFirstPreferredLanguage<sup>9+</sup> 578 579static getFirstPreferredLanguage(): string 580 581获取系统偏好语言列表中的第一个偏好语言。 582 583**系统能力**:SystemCapability.Global.I18n 584 585**返回值:** 586 587| 类型 | 说明 | 588| ------ | -------------- | 589| string | 偏好语言列表中的第一个语言。 | 590 591**示例:** 592 ```ts 593 import { BusinessError } from '@ohos.base'; 594 595 try { 596 let firstPreferredLanguage: string = I18n.System.getFirstPreferredLanguage(); // 获取系统当前偏好语言列表中的第一个偏好语言 597 } catch(error) { 598 let err: BusinessError = error as BusinessError; 599 console.error(`call System.getFirstPreferredLanguage failed, error code: ${err.code}, message: ${err.message}.`); 600 } 601 ``` 602 603### getAppPreferredLanguage<sup>9+</sup> 604 605static getAppPreferredLanguage(): string 606 607获取应用的偏好语言。 608 609**系统能力**:SystemCapability.Global.I18n 610 611**返回值:** 612 613| 类型 | 说明 | 614| ------ | -------- | 615| string | 应用的偏好语言。 | 616 617**示例:** 618 ```ts 619 import { BusinessError } from '@ohos.base'; 620 621 try { 622 let appPreferredLanguage: string = I18n.System.getAppPreferredLanguage(); // 获取应用偏好语言 623 } catch(error) { 624 let err: BusinessError = error as BusinessError; 625 console.error(`call System.getAppPreferredLanguage failed, error code: ${err.code}, message: ${err.message}.`); 626 } 627 ``` 628 629### setUsingLocalDigit<sup>9+</sup> 630 631static setUsingLocalDigit(flag: boolean): void 632 633设置系统是否使用本地数字。 634 635**系统接口**:此接口为系统接口。 636 637**需要权限**:ohos.permission.UPDATE_CONFIGURATION 638 639**系统能力**:SystemCapability.Global.I18n 640 641**参数:** 642 643| 参数名 | 类型 | 必填 | 说明 | 644| ---- | ------- | ---- | ------------------------------- | 645| flag | boolean | 是 | true表示打开本地数字开关,false表示关闭本地数字开关。 | 646 647**错误码:** 648 649以下错误码的详细介绍请参见[ohos.i18n错误码](../errorcodes/errorcode-i18n.md)。 650 651| 错误码ID | 错误信息 | 652| ------ | ---------------------- | 653| 890001 | param value not valid | 654 655**示例:** 656 ```ts 657 import { BusinessError } from '@ohos.base'; 658 659 try { 660 I18n.System.setUsingLocalDigit(true); // 打开本地化数字开关 661 } catch(error) { 662 let err: BusinessError = error as BusinessError; 663 console.error(`call System.setUsingLocalDigit failed, error code: ${err.code}, message: ${err.message}.`); 664 } 665 ``` 666 667### getUsingLocalDigit<sup>9+</sup> 668 669static getUsingLocalDigit(): boolean 670 671判断系统是否使用本地数字。 672 673**系统能力**:SystemCapability.Global.I18n 674 675**返回值:** 676 677| 类型 | 说明 | 678| ------- | ---------------------------------------- | 679| boolean | true表示系统当前已打开本地数字开关,false表示系统当前未打开本地数字开关。 | 680 681**示例:** 682 ```ts 683 import { BusinessError } from '@ohos.base'; 684 685 try { 686 let status: boolean = I18n.System.getUsingLocalDigit(); // 判断本地化数字开关是否打开 687 } catch(error) { 688 let err: BusinessError = error as BusinessError; 689 console.error(`call System.getUsingLocalDigit failed, error code: ${err.code}, message: ${err.message}.`); 690 } 691 ``` 692 693 694## I18n.isRTL<sup>7+</sup> 695 696isRTL(locale: string): boolean 697 698获取该区域是否为从右至左显示语言。 699 700**系统能力**:SystemCapability.Global.I18n 701 702**参数:** 703 704| 参数名 | 类型 | 必填 | 说明 | 705| ------ | ------ | ---- | ------- | 706| locale | string | 是 | 指定区域ID。 | 707 708**返回值:** 709 710| 类型 | 说明 | 711| ------- | ---------------------------------------- | 712| boolean | true表示该locale从右至左显示语言;false表示该locale从左至右显示语言。 | 713 714**示例:** 715 ```ts 716 I18n.isRTL("zh-CN");// 中文不是RTL语言,返回false 717 I18n.isRTL("ar-EG");// 阿语是RTL语言,返回true 718 ``` 719 720 721## I18n.getCalendar<sup>8+</sup> 722 723getCalendar(locale: string, type? : string): Calendar 724 725获取日历对象。 726 727**系统能力**:SystemCapability.Global.I18n 728 729**参数:** 730 731| 参数名 | 类型 | 必填 | 说明 | 732| ------ | ------ | ---- | ---------------------------------------- | 733| locale | string | 是 | 合法的locale值,例如zh-Hans-CN。 | 734| type | string | 否 | 合法的日历类型,目前合法的类型有buddhist, chinese, coptic, ethiopic, hebrew, gregory, indian, islamic_civil, islamic_tbla, islamic_umalqura, japanese, persian。默认值:区域默认的日历类型。 | 735 736**返回值:** 737 738| 类型 | 说明 | 739| ---------------------- | ----- | 740| [Calendar](#calendar8) | 日历对象。 | 741 742**示例:** 743 ```ts 744 I18n.getCalendar("zh-Hans", "chinese"); // 获取中国农历日历对象 745 ``` 746 747 748## Calendar<sup>8+</sup> 749 750 751### setTime<sup>8+</sup> 752 753setTime(date: Date): void 754 755设置日历对象内部的时间日期。 756 757**系统能力**:SystemCapability.Global.I18n 758 759**参数:** 760 761| 参数名 | 类型 | 必填 | 说明 | 762| ---- | ---- | ---- | ----------------- | 763| date | Date | 是 | 将要设置的日历对象的内部时间日期。 | 764 765**示例:** 766 ```ts 767 let calendar: I18n.Calendar = I18n.getCalendar("en-US", "gregory"); 768 let date: Date = new Date(2021, 10, 7, 8, 0, 0, 0); 769 calendar.setTime(date); 770 ``` 771 772 773### setTime<sup>8+</sup> 774 775setTime(time: number): void 776 777设置日历对象内部的时间日期, time为从1970.1.1 00:00:00 GMT逝去的毫秒数。 778 779**系统能力**:SystemCapability.Global.I18n 780 781**参数:** 782 783| 参数名 | 类型 | 必填 | 说明 | 784| ---- | ------ | ---- | ---------------------------------------- | 785| time | number | 是 | time为从1970.1.1 00:00:00 GMT逝去的毫秒数。 | 786 787**示例:** 788 ```ts 789 let calendar: I18n.Calendar = I18n.getCalendar("en-US", "gregory"); 790 calendar.setTime(10540800000); 791 ``` 792 793 794### set<sup>8+</sup> 795 796set(year: number, month: number, date:number, hour?: number, minute?: number, second?: number): void 797 798设置日历对象的年、月、日、时、分、秒。 799 800**系统能力**:SystemCapability.Global.I18n 801 802**参数:** 803 804| 参数名 | 类型 | 必填 | 说明 | 805| ------ | ------ | ---- | ------ | 806| year | number | 是 | 设置的年。 | 807| month | number | 是 | 设置的月。 | 808| date | number | 是 | 设置的日。 | 809| hour | number | 否 | 设置的小时。默认值:系统小时。 | 810| minute | number | 否 | 设置的分钟。默认值:系统分钟。 | 811| second | number | 否 | 设置的秒。默认值:系统秒。 | 812 813**示例:** 814 ```ts 815 let calendar: I18n.Calendar = I18n.getCalendar("zh-Hans"); 816 calendar.set(2021, 10, 1, 8, 0, 0); // set time to 2021.10.1 08:00:00 817 ``` 818 819 820### setTimeZone<sup>8+</sup> 821 822setTimeZone(timezone: string): void 823 824设置日历对象的时区。 825 826**系统能力**:SystemCapability.Global.I18n 827 828**参数:** 829 830| 参数名 | 类型 | 必填 | 说明 | 831| -------- | ------ | ---- | ------------------------- | 832| timezone | string | 是 | 设置的时区id,如“Asia/Shanghai”。 | 833 834**示例:** 835 ```ts 836 let calendar: I18n.Calendar = I18n.getCalendar("zh-Hans"); 837 calendar.setTimeZone("Asia/Shanghai"); 838 ``` 839 840 841### getTimeZone<sup>8+</sup> 842 843getTimeZone(): string 844 845获取日历对象的时区。 846 847**系统能力**:SystemCapability.Global.I18n 848 849**返回值:** 850 851| 类型 | 说明 | 852| ------ | ---------- | 853| string | 日历对象的时区id。 | 854 855**示例:** 856 ```ts 857 let calendar: I18n.Calendar = I18n.getCalendar("zh-Hans"); 858 calendar.setTimeZone("Asia/Shanghai"); 859 let timezone: string = calendar.getTimeZone(); // timezone = "Asia/Shanghai" 860 ``` 861 862 863### getFirstDayOfWeek<sup>8+</sup> 864 865getFirstDayOfWeek(): number 866 867获取日历对象的一周起始日。 868 869**系统能力**:SystemCapability.Global.I18n 870 871**返回值:** 872 873| 类型 | 说明 | 874| ------ | --------------------- | 875| number | 获取一周的起始日,1代表周日,7代表周六。 | 876 877**示例:** 878 ```ts 879 let calendar: I18n.Calendar = I18n.getCalendar("en-US", "gregory"); 880 let firstDayOfWeek: number = calendar.getFirstDayOfWeek(); // firstDayOfWeek = 1 881 ``` 882 883 884### setFirstDayOfWeek<sup>8+</sup> 885 886setFirstDayOfWeek(value: number): void 887 888设置每一周的起始日。 889 890**系统能力**:SystemCapability.Global.I18n 891 892**参数:** 893 894| 参数名 | 类型 | 必填 | 说明 | 895| ----- | ------ | ---- | --------------------- | 896| value | number | 是 | 设置一周的起始日,1代表周日,7代表周六。 | 897 898**示例:** 899 ```ts 900 let calendar: I18n.Calendar = I18n.getCalendar("zh-Hans"); 901 calendar.setFirstDayOfWeek(3); 902 let firstDayOfWeek: number = calendar.getFirstDayOfWeek(); // firstDayOfWeek = 3 903 ``` 904 905 906### getMinimalDaysInFirstWeek<sup>8+</sup> 907 908getMinimalDaysInFirstWeek(): number 909 910获取一年中第一周的最小天数。 911 912**系统能力**:SystemCapability.Global.I18n 913 914**返回值:** 915 916| 类型 | 说明 | 917| ------ | ------------ | 918| number | 一年中第一周的最小天数。 | 919 920**示例:** 921 ```ts 922 let calendar: I18n.Calendar = I18n.getCalendar("zh-Hans"); 923 let minimalDaysInFirstWeek: number = calendar.getMinimalDaysInFirstWeek(); // minimalDaysInFirstWeek = 1 924 ``` 925 926 927### setMinimalDaysInFirstWeek<sup>8+</sup> 928 929setMinimalDaysInFirstWeek(value: number): void 930 931设置一年中第一周的最小天数。 932 933**系统能力**:SystemCapability.Global.I18n 934 935**参数:** 936 937| 参数名 | 类型 | 必填 | 说明 | 938| ----- | ------ | ---- | ------------ | 939| value | number | 是 | 一年中第一周的最小天数。 | 940 941**示例:** 942 ```ts 943 let calendar: I18n.Calendar = I18n.getCalendar("zh-Hans"); 944 calendar.setMinimalDaysInFirstWeek(3); 945 let minimalDaysInFirstWeek: number = calendar.getMinimalDaysInFirstWeek(); // minimalDaysInFirstWeek = 3 946 ``` 947 948 949### get<sup>8+</sup> 950 951get(field: string): number 952 953获取日历对象中与field相关联的值。 954 955**系统能力**:SystemCapability.Global.I18n 956 957**参数:** 958 959| 参数名 | 类型 | 必填 | 说明 | 960| ----- | ------ | ---- | ---------------------------------------- | 961| field | string | 是 | 通过field来获取日历对象相应的值。目前支持的field值有 era, year, month, week_of_year, week_of_month, date, day_of_year, day_of_week, day_of_week_in_month, hour, hour_of_day, minute, second, millisecond, zone_offset, dst_offset, year_woy, dow_local, extended_year, julian_day, milliseconds_in_day, is_leap_month。 | 962 963**返回值:** 964 965| 类型 | 说明 | 966| ------ | ---------------------------------------- | 967| number | 与field相关联的值,如当前Calendar对象的内部日期的年份为1990,get("year")返回1990。 | 968 969**示例:** 970 ```ts 971 let calendar: I18n.Calendar = I18n.getCalendar("zh-Hans"); 972 calendar.set(2021, 10, 1, 8, 0, 0); // set time to 2021.10.1 08:00:00 973 let hourOfDay: number = calendar.get("hour_of_day"); // hourOfDay = 8 974 ``` 975 976 977### getDisplayName<sup>8+</sup> 978 979getDisplayName(locale: string): string 980 981获取日历对象在该区域的名字。 982 983**系统能力**:SystemCapability.Global.I18n 984 985**参数:** 986 987| 参数名 | 类型 | 必填 | 说明 | 988| ------ | ------ | ---- | ---------------------------------------- | 989| locale | string | 是 | locale用于指定区域,如buddhist在en-US上显示的名称为“Buddhist Calendar”。 | 990 991**返回值:** 992 993| 类型 | 说明 | 994| ------ | ------------------- | 995| string | 日历在locale所指示的区域的名字。 | 996 997**示例:** 998 ```ts 999 let calendar: I18n.Calendar = I18n.getCalendar("en-US", "buddhist"); 1000 let calendarName: string = calendar.getDisplayName("zh"); // calendarName = "佛历" 1001 ``` 1002 1003 1004### isWeekend<sup>8+</sup> 1005 1006isWeekend(date?: Date): boolean 1007 1008判断指定的日期在日历中是否为周末。 1009 1010**系统能力**:SystemCapability.Global.I18n 1011 1012**参数:** 1013 1014| 参数名 | 类型 | 必填 | 说明 | 1015| ---- | ---- | ---- | ---------------------------------------- | 1016| date | Date | 否 | 指定的日期。若不填,则判断当前日期是否为周末。默认值:系统日期。 | 1017 1018**返回值:** 1019 1020| 类型 | 说明 | 1021| ------- | ----------------------------------- | 1022| boolean | 若判断指定日期为周末时,返回true,否则返回false。 | 1023 1024**示例:** 1025 ```ts 1026 let calendar: I18n.Calendar = I18n.getCalendar("zh-Hans"); 1027 calendar.set(2021, 11, 11, 8, 0, 0); // set time to 2021.11.11 08:00:00 1028 calendar.isWeekend(); // false 1029 let date: Date = new Date(2011, 11, 6, 9, 0, 0); 1030 calendar.isWeekend(date); // true 1031 ``` 1032 1033 1034## PhoneNumberFormat<sup>8+</sup> 1035 1036 1037### constructor<sup>8+</sup> 1038 1039constructor(country: string, options?: PhoneNumberFormatOptions) 1040 1041创建电话号码格式化对象。 1042 1043**系统能力**:SystemCapability.Global.I18n 1044 1045**参数:** 1046 1047| 参数名 | 类型 | 必填 | 说明 | 1048| ------- | ---------------------------------------- | ---- | ---------------- | 1049| country | string | 是 | 表示电话号码所属国家或地区代码。 | 1050| options | [PhoneNumberFormatOptions](#phonenumberformatoptions8) | 否 | 电话号码格式化对象的相关选项。默认值:NATIONAL。 | 1051 1052**示例:** 1053 ```ts 1054 let option: I18n.PhoneNumberFormatOptions = {type: "E164"}; 1055 let phoneNumberFormat: I18n.PhoneNumberFormat = new I18n.PhoneNumberFormat("CN", option); 1056 ``` 1057 1058 1059### isValidNumber<sup>8+</sup> 1060 1061isValidNumber(number: string): boolean 1062 1063判断传入的电话号码格式是否正确。 1064 1065**系统能力**:SystemCapability.Global.I18n 1066 1067**参数:** 1068 1069| 参数名 | 类型 | 必填 | 说明 | 1070| ------ | ------ | ---- | --------- | 1071| number | string | 是 | 待判断的电话号码。 | 1072 1073**返回值:** 1074 1075| 类型 | 说明 | 1076| ------- | ------------------------------------- | 1077| boolean | 返回true表示电话号码的格式正确,返回false表示电话号码的格式错误。 | 1078 1079**示例:** 1080 ```ts 1081 let phonenumberfmt: I18n.PhoneNumberFormat = new I18n.PhoneNumberFormat("CN"); 1082 let isValidNumber: boolean = phonenumberfmt.isValidNumber("158****2312"); // isValidNumber = true 1083 ``` 1084 1085 1086### format<sup>8+</sup> 1087 1088format(number: string): string 1089 1090对电话号码进行格式化。 1091 1092**系统能力**:SystemCapability.Global.I18n 1093 1094**参数:** 1095 1096| 参数名 | 类型 | 必填 | 说明 | 1097| ------ | ------ | ---- | ---------- | 1098| number | string | 是 | 待格式化的电话号码。 | 1099 1100**返回值:** 1101 1102| 类型 | 说明 | 1103| ------ | ---------- | 1104| string | 格式化后的电话号码。 | 1105 1106**示例:** 1107 ```ts 1108 let phonenumberfmt: I18n.PhoneNumberFormat = new I18n.PhoneNumberFormat("CN"); 1109 let formattedPhoneNumber: string = phonenumberfmt.format("158****2312"); // formattedPhoneNumber = "158 **** 2312" 1110 ``` 1111 1112 1113### getLocationName<sup>9+</sup> 1114 1115getLocationName(number: string, locale: string): string 1116 1117获取电话号码归属地。 1118 1119**系统能力**:SystemCapability.Global.I18n 1120 1121**参数:** 1122 1123| 参数名 | 类型 | 必填 | 说明 | 1124| ------ | ------ | ---- | ---- | 1125| number | string | 是 | 电话号码 | 1126| locale | string | 是 | 区域ID | 1127 1128**返回值:** 1129 1130| 类型 | 说明 | 1131| ------ | -------- | 1132| string | 电话号码归属地。 | 1133 1134**示例:** 1135 ```ts 1136 let phonenumberfmt: I18n.PhoneNumberFormat = new I18n.PhoneNumberFormat("CN"); 1137 let locationName: string = phonenumberfmt.getLocationName("158****2345", "zh-CN"); // locationName = "广东省湛江市" 1138 ``` 1139 1140 1141## PhoneNumberFormatOptions<sup>8+</sup> 1142 1143表示电话号码格式化对象可设置的属性。 1144 1145**系统能力**:SystemCapability.Global.I18n 1146 1147| 名称 | 类型 | 可读 | 可写 | 说明 | 1148| ---- | ------ | ---- | ---- | ---------------------------------------- | 1149| type | string | 是 | 是 | 表示对电话号码格式化的类型,取值范围:"E164", "INTERNATIONAL", "NATIONAL", "RFC3966"。<br>-在API version 8版本,type为必填项。 <br>-API version 9版本开始,type为选填项。| 1150 1151 1152## UnitInfo<sup>8+</sup> 1153 1154度量衡单位信息。 1155 1156**系统能力**:SystemCapability.Global.I18n 1157 1158| 名称 | 类型 | 可读 | 可写 | 说明 | 1159| ------------- | ------ | ---- | ---- | ---------------------------------------- | 1160| unit | string | 是 | 是 | 单位的名称,如:"meter", "inch", "cup"等。 | 1161| measureSystem | string | 是 | 是 | 单位的度量体系,取值包括:"SI", "US", "UK"。 | 1162 1163 1164## getInstance<sup>8+</sup> 1165 1166getInstance(locale?:string): IndexUtil 1167 1168创建并返回IndexUtil对象。 1169 1170**系统能力**:SystemCapability.Global.I18n 1171 1172**参数:** 1173 1174| 参数名 | 类型 | 必填 | 说明 | 1175| ------ | ------ | ---- | ---------------------------- | 1176| locale | string | 否 | 区域设置信息字符串,包括语言以及可选的脚本和区域。默认值:系统Locale。 | 1177 1178**返回值:** 1179 1180| 类型 | 说明 | 1181| ------------------------ | --------------------- | 1182| [IndexUtil](#indexutil8) | locale对应的IndexUtil对象。 | 1183 1184**示例:** 1185 ```ts 1186 let indexUtil: I18n.IndexUtil = I18n.getInstance("zh-CN"); 1187 ``` 1188 1189 1190## IndexUtil<sup>8+</sup> 1191 1192 1193### getIndexList<sup>8+</sup> 1194 1195getIndexList(): Array<string> 1196 1197获取当前区域对应的索引列表。 1198 1199**系统能力**:SystemCapability.Global.I18n 1200 1201**返回值:** 1202 1203| 类型 | 说明 | 1204| ------------------- | ------------------ | 1205| Array<string> | 返回当前locale对应的索引列表。 | 1206 1207**示例:** 1208 ```ts 1209 let indexUtil: I18n.IndexUtil = I18n.getInstance("zh-CN"); 1210 // indexList = [ "...", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", 1211 // "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "..." ] 1212 let indexList: Array<string> = indexUtil.getIndexList(); 1213 ``` 1214 1215 1216### addLocale<sup>8+</sup> 1217 1218addLocale(locale: string): void 1219 1220在当前索引列表中添加新的区域。 1221 1222**系统能力**:SystemCapability.Global.I18n 1223 1224**参数:** 1225 1226| 参数名 | 类型 | 必填 | 说明 | 1227| ------ | ------ | ---- | ---------------------------- | 1228| locale | string | 是 | 区域设置信息的字符串,包括语言以及可选的脚本和区域。 | 1229 1230**示例:** 1231 ```ts 1232 let indexUtil: I18n.IndexUtil = I18n.getInstance("zh-CN"); 1233 indexUtil.addLocale("en-US"); 1234 ``` 1235 1236 1237### getIndex<sup>8+</sup> 1238 1239getIndex(text: string): string 1240 1241获取text对应的索引。 1242 1243**系统能力**:SystemCapability.Global.I18n 1244 1245**参数:** 1246 1247| 参数名 | 类型 | 必填 | 说明 | 1248| ---- | ------ | ---- | ------------ | 1249| text | string | 是 | 待计算索引值的输入文本。 | 1250 1251**返回值:** 1252 1253| 类型 | 说明 | 1254| ------ | ----------- | 1255| string | 输入文本对应的索引值。 | 1256 1257**示例:** 1258 ```ts 1259 let indexUtil: I18n.IndexUtil = I18n.getInstance("zh-CN"); 1260 let index: string = indexUtil.getIndex("hi"); // index = "H" 1261 ``` 1262 1263 1264## I18n.getLineInstance<sup>8+</sup> 1265 1266getLineInstance(locale: string): BreakIterator 1267 1268获取一个用于断句的[BreakIterator](#breakiterator8)对象。 1269 1270**系统能力**:SystemCapability.Global.I18n 1271 1272**参数:** 1273 1274| 参数名 | 类型 | 必填 | 说明 | 1275| ------ | ------ | ---- | ---------------------------------------- | 1276| locale | string | 是 | 合法的locale值,例如zh-Hans-CN。生成的[BreakIterator](#breakiterator8)将按照locale所指定的区域的规则来进行断句。 | 1277 1278**返回值:** 1279 1280| 类型 | 说明 | 1281| -------------------------------- | ----------- | 1282| [BreakIterator](#breakiterator8) | 用于进行断句的处理器。 | 1283 1284**示例:** 1285 ```ts 1286 let iterator: I18n.BreakIterator = I18n.getLineInstance("en"); 1287 ``` 1288 1289 1290## BreakIterator<sup>8+</sup> 1291 1292 1293### setLineBreakText<sup>8+</sup> 1294 1295setLineBreakText(text: string): void 1296 1297设置BreakIterator要处理的文本。 1298 1299**系统能力**:SystemCapability.Global.I18n 1300 1301**参数:** 1302 1303| 参数名 | 类型 | 必填 | 说明 | 1304| ---- | ------ | ---- | ----------------------- | 1305| text | string | 是 | 指定BreakIterator进行断句的文本。 | 1306 1307**示例:** 1308 ```ts 1309 let iterator: I18n.BreakIterator = I18n.getLineInstance("en"); 1310 iterator.setLineBreakText("Apple is my favorite fruit."); // 设置短句文本 1311 ``` 1312 1313 1314### getLineBreakText<sup>8+</sup> 1315 1316getLineBreakText(): string 1317 1318获取BreakIterator当前处理的文本。 1319 1320**系统能力**:SystemCapability.Global.I18n 1321 1322**返回值:** 1323 1324| 类型 | 说明 | 1325| ------ | ---------------------- | 1326| string | BreakIterator对象正在处理的文本 | 1327 1328**示例:** 1329 ```ts 1330 let iterator: I18n.BreakIterator = I18n.getLineInstance("en"); 1331 iterator.setLineBreakText("Apple is my favorite fruit."); 1332 let breakText: string = iterator.getLineBreakText(); // breakText = "Apple is my favorite fruit." 1333 ``` 1334 1335 1336### current<sup>8+</sup> 1337 1338current(): number 1339 1340获取BreakIterator对象在当前处理的文本中的位置。 1341 1342**系统能力**:SystemCapability.Global.I18n 1343 1344**返回值:** 1345 1346| 类型 | 说明 | 1347| ------ | --------------------------- | 1348| number | BreakIterator在当前所处理的文本中的位置。 | 1349 1350**示例:** 1351 ```ts 1352 let iterator: I18n.BreakIterator = I18n.getLineInstance("en"); 1353 iterator.setLineBreakText("Apple is my favorite fruit."); 1354 let currentPos: number = iterator.current(); // currentPos = 0 1355 ``` 1356 1357 1358### first<sup>8+</sup> 1359 1360first(): number 1361 1362将BreakIterator对象设置到第一个可断句的分割点。第一个分割点总是被处理的文本的起始位置。 1363 1364**系统能力**:SystemCapability.Global.I18n 1365 1366**返回值:** 1367 1368| 类型 | 说明 | 1369| ------ | ----------------- | 1370| number | 被处理文本的第一个分割点的偏移量。 | 1371 1372**示例:** 1373 ```ts 1374 let iterator: I18n.BreakIterator = I18n.getLineInstance("en"); 1375 iterator.setLineBreakText("Apple is my favorite fruit."); 1376 let firstPos: number = iterator.first(); // firstPos = 0 1377 ``` 1378 1379 1380### last<sup>8+</sup> 1381 1382last(): number 1383 1384将BreakIterator对象的位置设置到最后一个可断句的分割点。最后一个分割点总是被处理文本末尾的下一个位置。 1385 1386**系统能力**:SystemCapability.Global.I18n 1387 1388**返回值:** 1389 1390| 类型 | 说明 | 1391| ------ | ------------------ | 1392| number | 被处理的文本的最后一个分割点的偏移量 | 1393 1394**示例:** 1395 ```ts 1396 let iterator: I18n.BreakIterator = I18n.getLineInstance("en"); 1397 iterator.setLineBreakText("Apple is my favorite fruit."); 1398 let lastPos: number = iterator.last(); // lastPos = 27 1399 ``` 1400 1401 1402### next<sup>8+</sup> 1403 1404next(index?: number): number 1405 1406将BreakIterator向后移动相应个分割点。 1407 1408**系统能力**:SystemCapability.Global.I18n 1409 1410**参数:** 1411 1412| 参数名 | 类型 | 必填 | 说明 | 1413| ----- | ------ | ---- | ---------------------------------------- | 1414| index | number | 否 | BreakIterator将要移动的分割点数。正数代表向后移动,即将BreakIterator向后移动number个可断句的分割点;负数代表向前移动,即向前移动相应个分割点。默认值:1。 | 1415 1416**返回值:** 1417 1418| 类型 | 说明 | 1419| ------ | ---------------------------------------- | 1420| number | 返回移动了index个分割点后,当前BreakIterator在文本中的位置。若移动index个分割点后超出了所处理的文本的长度范围,返回-1。 | 1421 1422**示例:** 1423 ```ts 1424 let iterator: I18n.BreakIterator = I18n.getLineInstance("en"); 1425 iterator.setLineBreakText("Apple is my favorite fruit."); 1426 let pos: number = iterator.first(); // pos = 0 1427 pos = iterator.next(); // pos = 6 1428 pos = iterator.next(10); // pos = -1 1429 ``` 1430 1431 1432### previous<sup>8+</sup> 1433 1434previous(): number 1435 1436将BreakIterator向前移动一个分割点。 1437 1438**系统能力**:SystemCapability.Global.I18n 1439 1440**返回值:** 1441 1442| 类型 | 说明 | 1443| ------ | ---------------------------------------- | 1444| number | 返回移动到前一个分割点后,当前BreakIterator在文本中的位置。若移动index个分割点后超出了所处理的文本的长度范围,返回-1。 | 1445 1446**示例:** 1447 ```ts 1448 let iterator: I18n.BreakIterator = I18n.getLineInstance("en"); 1449 iterator.setLineBreakText("Apple is my favorite fruit."); 1450 let pos: number = iterator.first(); // pos = 0 1451 pos = iterator.next(3); // pos = 12 1452 pos = iterator.previous(); // pos = 9 1453 ``` 1454 1455 1456### following<sup>8+</sup> 1457 1458following(offset: number): number 1459 1460将BreakIterator设置到指定位置的后面一个分割点。 1461 1462**系统能力**:SystemCapability.Global.I18n 1463 1464**参数:** 1465 1466| 参数名 | 类型 | 必填 | 说明 | 1467| ------ | ------ | ---- | ---------------------------------------- | 1468| offset | number | 是 | 将BreakIterator设置到指定位置的后面一个分割点。 | 1469 1470**返回值:** 1471 1472| 类型 | 说明 | 1473| ------ | ---------------------------------------- | 1474| number | 返回BreakIterator移动后的位置,如果由offset所指定的位置的下一个分割点超出了文本的范围则返回-1。 | 1475 1476**示例:** 1477 ```ts 1478 let iterator: I18n.BreakIterator = I18n.getLineInstance("en"); 1479 iterator.setLineBreakText("Apple is my favorite fruit."); 1480 let pos: number = iterator.following(0); // pos = 6 1481 pos = iterator.following(100); // pos = -1 1482 pos = iterator.current(); // pos = 27 1483 ``` 1484 1485 1486### isBoundary<sup>8+</sup> 1487 1488isBoundary(offset: number): boolean 1489 1490判断文本指定位置是否为分割点。 1491 1492**系统能力**:SystemCapability.Global.I18n 1493 1494**参数:** 1495 1496| 参数名 | 类型 | 必填 | 说明 | 1497| ------ | ------ | ---- | ----------- | 1498| offset | number | 是 | 若offset指定的文本位置是一个分割点,则返回true,否则返回false。返回true时,将BreakIterator对象移动到offset指定的位置,否则相当于调用following。 | 1499 1500**返回值:** 1501 1502| 类型 | 说明 | 1503| ------- | ------------------------------- | 1504| boolean | 如果是一个分割点返回true, 否则返回false。 | 1505 1506**示例:** 1507 ```ts 1508 let iterator: I18n.BreakIterator = I18n.getLineInstance("en"); 1509 iterator.setLineBreakText("Apple is my favorite fruit."); 1510 let isBoundary: boolean = iterator.isBoundary(0); // isBoundary = true; 1511 isBoundary = iterator.isBoundary(5); // isBoundary = false; 1512 ``` 1513 1514 1515## I18n.getTimeZone<sup>7+</sup> 1516 1517getTimeZone(zoneID?: string): TimeZone 1518 1519获取时区ID对应的时区对象。 1520 1521**系统能力**:SystemCapability.Global.I18n 1522 1523**参数:** 1524 1525| 参数名 | 类型 | 必填 | 说明 | 1526| ------ | ------ | ---- | ----- | 1527| zondID | string | 否 | 时区ID。默认值:系统时区。 | 1528 1529**返回值:** 1530 1531| 类型 | 说明 | 1532| -------- | ------------ | 1533| [TimeZone](#timezone) | 时区ID对应的时区对象。 | 1534 1535**示例:** 1536 ```ts 1537 let timezone: I18n.TimeZone = I18n.getTimeZone(); 1538 ``` 1539 1540 1541## TimeZone 1542 1543 1544### getID 1545 1546getID(): string 1547 1548获取时区对象的ID。 1549 1550**系统能力**:SystemCapability.Global.I18n 1551 1552**返回值:** 1553 1554| 类型 | 说明 | 1555| ------ | ------------ | 1556| string | 时区对象对应的时区ID。 | 1557 1558**示例:** 1559 ```ts 1560 let timezone: I18n.TimeZone = I18n.getTimeZone(); 1561 let timezoneID: string = timezone.getID(); // timezoneID = "Asia/Shanghai" 1562 ``` 1563 1564 1565### getDisplayName 1566 1567getDisplayName(locale?: string, isDST?: boolean): string 1568 1569获取时区对象的本地化表示。 1570 1571**系统能力**:SystemCapability.Global.I18n 1572 1573**参数:** 1574 1575| 参数名 | 类型 | 必填 | 说明 | 1576| ------ | ------- | ---- | -------------------- | 1577| locale | string | 否 | 区域ID。默认值:系统Locale。 | 1578| isDST | boolean | 否 | 时区对象本地化表示时是否考虑夏令时。默认值:false。 | 1579 1580**返回值:** 1581 1582| 类型 | 说明 | 1583| ------ | ------------- | 1584| string | 时区对象在指定区域的表示。 | 1585 1586**示例:** 1587 ```ts 1588 let timezone: I18n.TimeZone = I18n.getTimeZone(); 1589 let timezoneName: string = timezone.getDisplayName("zh-CN", false); // timezoneName = "中国标准时间" 1590 ``` 1591 1592 1593### getRawOffset 1594 1595getRawOffset(): number 1596 1597获取时区对象表示的时区与UTC时区的偏差。 1598 1599**系统能力**:SystemCapability.Global.I18n 1600 1601**返回值:** 1602 1603| 类型 | 说明 | 1604| ------ | ------------------- | 1605| number | 时区对象表示的时区与UTC时区的偏差。 | 1606 1607**示例:** 1608 ```ts 1609 let timezone: I18n.TimeZone = I18n.getTimeZone(); 1610 let offset: number = timezone.getRawOffset(); // offset = 28800000 1611 ``` 1612 1613 1614### getOffset 1615 1616getOffset(date?: number): number 1617 1618获取某一时刻时区对象表示的时区与UTC时区的偏差。 1619 1620**系统能力**:SystemCapability.Global.I18n 1621 1622**参数:** 1623 1624| 参数名 | 类型 | 必填 | 说明 | 1625| ------ | ------ | ---- | ------ | 1626| date | number | 否 | 待计算偏差的时刻。 | 1627 1628**返回值:** 1629 1630| 类型 | 说明 | 1631| ------ | ----------------------- | 1632| number | 某一时刻时区对象表示的时区与UTC时区的偏差。默认值:系统时间。 | 1633 1634**示例:** 1635 ```ts 1636 let timezone: I18n.TimeZone = I18n.getTimeZone(); 1637 let offset: number = timezone.getOffset(1234567890); // offset = 28800000 1638 ``` 1639 1640 1641### getAvailableIDs<sup>9+</sup> 1642 1643static getAvailableIDs(): Array<string> 1644 1645获取系统支持的时区ID。 1646 1647**系统能力**:SystemCapability.Global.I18n 1648 1649**返回值:** 1650 1651| 类型 | 说明 | 1652| ------------------- | ----------- | 1653| Array<string> | 系统支持的时区ID列表 | 1654 1655**示例:** 1656 ```ts 1657 // ids = ["America/Adak", "America/Anchorage", "America/Bogota", "America/Denver", "America/Los_Angeles", "America/Montevideo", "America/Santiago", "America/Sao_Paulo", "Asia/Ashgabat", "Asia/Hovd", "Asia/Jerusalem", "Asia/Magadan", "Asia/Omsk", "Asia/Shanghai", "Asia/Tokyo", "Asia/Yerevan", "Atlantic/Cape_Verde", "Australia/Lord_Howe", "Europe/Dublin", "Europe/London", "Europe/Moscow", "Pacific/Auckland", "Pacific/Easter", "Pacific/Pago-Pago"], 当前共支持24个时区 1658 let ids: Array<string> = I18n.TimeZone.getAvailableIDs(); 1659 ``` 1660 1661 1662### getAvailableZoneCityIDs<sup>9+</sup> 1663 1664static getAvailableZoneCityIDs(): Array<string> 1665 1666获取系统支持的时区城市ID。 1667 1668**系统能力**:SystemCapability.Global.I18n 1669 1670**返回值:** 1671 1672| 类型 | 说明 | 1673| ------------------- | ------------- | 1674| Array<string> | 系统支持的时区城市ID列表 | 1675 1676**示例:** 1677 ```ts 1678 // cityIDs = ["Auckland", "Magadan", "Lord Howe Island", "Tokyo", "Shanghai", "Hovd", "Omsk", "Ashgabat", "Yerevan", "Moscow", "Tel Aviv", "Dublin", "London", "Praia", "Montevideo", "Brasília", "Santiago", "Bogotá", "Easter Island", "Salt Lake City", "Los Angeles", "Anchorage", "Adak", "Pago Pago"],当前共支持24个时区城市 1679 let cityIDs: Array<string> = I18n.TimeZone.getAvailableZoneCityIDs(); 1680 ``` 1681 1682 1683### getCityDisplayName<sup>9+</sup> 1684 1685static getCityDisplayName(cityID: string, locale: string): string 1686 1687获取某时区城市在该区域的本地化显示。 1688 1689**系统能力**:SystemCapability.Global.I18n 1690 1691**参数:** 1692 1693| 参数名 | 类型 | 必填 | 说明 | 1694| ------ | ------ | ---- | ------ | 1695| cityID | string | 是 | 时区城市ID | 1696| locale | string | 是 | 区域ID | 1697 1698**返回值:** 1699 1700| 类型 | 说明 | 1701| ------ | ------------------ | 1702| string | 时区城市在locale下的本地化显示 | 1703 1704**示例:** 1705 ```ts 1706 let displayName: string = I18n.TimeZone.getCityDisplayName("Shanghai", "zh-CN"); // displayName = "上海(中国)" 1707 ``` 1708 1709 1710### getTimezoneFromCity<sup>9+</sup> 1711 1712static getTimezoneFromCity(cityID: string): TimeZone 1713 1714创建某时区城市对应的时区对象。 1715 1716**系统能力**:SystemCapability.Global.I18n 1717 1718**参数:** 1719 1720| 参数名 | 类型 | 必填 | 说明 | 1721| ------ | ------ | ---- | ------ | 1722| cityID | string | 是 | 时区城市ID | 1723 1724**返回值:** 1725 1726| 类型 | 说明 | 1727| -------- | ----------- | 1728| TimeZone | 时区城市对应的时区对象 | 1729 1730**示例:** 1731 ```ts 1732 let timezone: I18n.TimeZone = I18n.TimeZone.getTimezoneFromCity("Shanghai"); 1733 ``` 1734 1735### getTimezonesByLocation<sup>10+</sup> 1736 1737static getTimezonesByLocation(longitude: number, latitude: number): Array<TimeZone> 1738 1739创建某经纬度对应的时区对象数组。 1740 1741**系统能力**:SystemCapability.Global.I18n 1742 1743**参数:** 1744 1745| 参数名 | 类型 | 必填 | 说明 | 1746| --------- | ------ | ---- | ------ | 1747| longitude | number | 是 | 经度, 范围[-180, 179.9), 东经取正值, 西经取负值 | 1748| latitude | number | 是 | 纬度, 范围[-90, 89.9), 北纬取正值, 南纬取负值 | 1749 1750**返回值:** 1751 1752| 类型 | 说明 | 1753| -------- | ----------- | 1754| Array<[TimeZone](#timezone)> | 时区对象的数组 | 1755 1756**错误码:** 1757 1758以下错误码的详细介绍请参见[ohos.i18n错误码](../errorcodes/errorcode-i18n.md)。 1759 1760| 错误码ID | 错误信息 | 1761| ------ | ---------------------- | 1762| 890001 | param value not valid | 1763 1764**示例:** 1765 ```ts 1766 let timezoneArray: Array<I18n.TimeZone> = I18n.TimeZone.getTimezonesByLocation(-118.1, 34.0); 1767 for (let i = 0; i < timezoneArray.length; i++) { 1768 let tzId: string = timezoneArray[i].getID(); 1769 } 1770 ``` 1771 1772 1773## Transliterator<sup>9+</sup> 1774 1775 1776### getAvailableIDs<sup>9+</sup> 1777 1778static getAvailableIDs(): string[] 1779 1780获取音译支持的ID列表。 1781 1782**系统能力**:SystemCapability.Global.I18n 1783 1784**返回值:** 1785 1786| 类型 | 说明 | 1787| -------- | ---------- | 1788| string[] | 音译支持的ID列表。 | 1789 1790**示例:** 1791 ```ts 1792 // ids共支持671个。每一个id由使用中划线分割的两部分组成,格式为 source-destination。例如ids = ["Han-Latin","Latin-ASCII", "Amharic-Latin/BGN","Accents-Any", ...],Han-Latin表示汉语转为译拉丁文,Amharic-Latin表示阿姆哈拉语转为拉丁文。 1793 // 更多使用信息可以参考ISO-15924。 1794 let ids: string[] = I18n.Transliterator.getAvailableIDs(); 1795 ``` 1796 1797 1798### getInstance<sup>9+</sup> 1799 1800static getInstance(id: string): Transliterator 1801 1802创建音译对象。 1803 1804**系统能力**:SystemCapability.Global.I18n 1805 1806**参数:** 1807 1808| 参数名 | 类型 | 必填 | 说明 | 1809| ---- | ------ | ---- | -------- | 1810| id | string | 是 | 音译支持的ID。 | 1811 1812**返回值:** 1813 1814| 类型 | 说明 | 1815| ---------------------------------- | ----- | 1816| [Transliterator](#transliterator9) | 音译对象。 | 1817 1818**示例:** 1819 ```ts 1820 let transliterator: I18n.Transliterator = I18n.Transliterator.getInstance("Any-Latn"); 1821 ``` 1822 1823 1824### transform<sup>9+</sup> 1825 1826transform(text: string): string 1827 1828将输入字符串从源格式转换为目标格式。 1829 1830**系统能力**:SystemCapability.Global.I18n 1831 1832**参数:** 1833 1834| 参数名 | 类型 | 必填 | 说明 | 1835| ---- | ------ | ---- | ------ | 1836| text | string | 是 | 输入字符串。 | 1837 1838**返回值:** 1839 1840| 类型 | 说明 | 1841| ------ | -------- | 1842| string | 转换后的字符串。 | 1843 1844**示例:** 1845 ```ts 1846 let transliterator: I18n.Transliterator = I18n.Transliterator.getInstance("Any-Latn"); 1847 let res: string = transliterator.transform("中国"); // res = "zhōng guó" 1848 ``` 1849 1850 1851## Unicode<sup>9+</sup> 1852 1853 1854### isDigit<sup>9+</sup> 1855 1856static isDigit(char: string): boolean 1857 1858判断字符串char是否是数字。 1859 1860**系统能力**:SystemCapability.Global.I18n 1861 1862**参数:** 1863 1864| 参数名 | 类型 | 必填 | 说明 | 1865| ---- | ------ | ---- | ----- | 1866| char | string | 是 | 输入字符。 | 1867 1868**返回值:** 1869 1870| 类型 | 说明 | 1871| ------- | ------------------------------------ | 1872| boolean | 返回true表示输入的字符是数字,返回false表示输入的字符不是数字。 | 1873 1874**示例:** 1875 ```ts 1876 let isdigit: boolean = I18n.Unicode.isDigit("1"); // isdigit = true 1877 ``` 1878 1879 1880### isSpaceChar<sup>9+</sup> 1881 1882static isSpaceChar(char: string): boolean 1883 1884判断字符串char是否是空格符。 1885 1886**系统能力**:SystemCapability.Global.I18n 1887 1888**参数:** 1889 1890| 参数名 | 类型 | 必填 | 说明 | 1891| ---- | ------ | ---- | ----- | 1892| char | string | 是 | 输入字符。 | 1893 1894**返回值:** 1895 1896| 类型 | 说明 | 1897| ------- | -------------------------------------- | 1898| boolean | 返回true表示输入的字符是空格符,返回false表示输入的字符不是空格符。 | 1899 1900**示例:** 1901 ```ts 1902 let isspacechar: boolean = I18n.Unicode.isSpaceChar("a"); // isspacechar = false 1903 ``` 1904 1905 1906### isWhitespace<sup>9+</sup> 1907 1908static isWhitespace(char: string): boolean 1909 1910判断字符串char是否是空白符。 1911 1912**系统能力**:SystemCapability.Global.I18n 1913 1914**参数:** 1915 1916| 参数名 | 类型 | 必填 | 说明 | 1917| ---- | ------ | ---- | ----- | 1918| char | string | 是 | 输入字符。 | 1919 1920**返回值:** 1921 1922| 类型 | 说明 | 1923| ------- | -------------------------------------- | 1924| boolean | 返回true表示输入的字符是空白符,返回false表示输入的字符不是空白符。 | 1925 1926**示例:** 1927 ```ts 1928 let iswhitespace: boolean = I18n.Unicode.isWhitespace("a"); // iswhitespace = false 1929 ``` 1930 1931 1932### isRTL<sup>9+</sup> 1933 1934static isRTL(char: string): boolean 1935 1936判断字符串char是否是从右到左语言的字符。 1937 1938**系统能力**:SystemCapability.Global.I18n 1939 1940**参数:** 1941 1942| 参数名 | 类型 | 必填 | 说明 | 1943| ---- | ------ | ---- | ----- | 1944| char | string | 是 | 输入字符。 | 1945 1946**返回值:** 1947 1948| 类型 | 说明 | 1949| ------- | ---------------------------------------- | 1950| boolean | 返回true表示输入的字符是从右到左语言的字符,返回false表示输入的字符不是从右到左语言的字符。 | 1951 1952**示例:** 1953 ```ts 1954 let isrtl: boolean = I18n.Unicode.isRTL("a"); // isrtl = false 1955 ``` 1956 1957 1958### isIdeograph<sup>9+</sup> 1959 1960static isIdeograph(char: string): boolean 1961 1962判断字符串char是否是表意文字。 1963 1964**系统能力**:SystemCapability.Global.I18n 1965 1966**参数:** 1967 1968| 参数名 | 类型 | 必填 | 说明 | 1969| ---- | ------ | ---- | ----- | 1970| char | string | 是 | 输入字符。 | 1971 1972**返回值:** 1973 1974| 类型 | 说明 | 1975| ------- | ---------------------------------------- | 1976| boolean | 返回true表示输入的字符是表意文字,返回false表示输入的字符不是表意文字。 | 1977 1978**示例:** 1979 ```ts 1980 let isideograph: boolean = I18n.Unicode.isIdeograph("a"); // isideograph = false 1981 ``` 1982 1983 1984### isLetter<sup>9+</sup> 1985 1986static isLetter(char: string): boolean 1987 1988判断字符串char是否是字母。 1989 1990**系统能力**:SystemCapability.Global.I18n 1991 1992**参数:** 1993 1994| 参数名 | 类型 | 必填 | 说明 | 1995| ---- | ------ | ---- | ----- | 1996| char | string | 是 | 输入字符。 | 1997 1998**返回值:** 1999 2000| 类型 | 说明 | 2001| ------- | ------------------------------------ | 2002| boolean | 返回true表示输入的字符是字母,返回false表示输入的字符不是字母。 | 2003 2004**示例:** 2005 ```ts 2006 let isletter: boolean = I18n.Unicode.isLetter("a"); // isletter = true 2007 ``` 2008 2009 2010### isLowerCase<sup>9+</sup> 2011 2012static isLowerCase(char: string): boolean 2013 2014判断字符串char是否是小写字母。 2015 2016**系统能力**:SystemCapability.Global.I18n 2017 2018**参数:** 2019 2020| 参数名 | 类型 | 必填 | 说明 | 2021| ---- | ------ | ---- | ----- | 2022| char | string | 是 | 输入字符。 | 2023 2024**返回值:** 2025 2026| 类型 | 说明 | 2027| ------- | ---------------------------------------- | 2028| boolean | 返回true表示输入的字符是小写字母,返回false表示输入的字符不是小写字母。 | 2029 2030**示例:** 2031 ```ts 2032 let islowercase: boolean = I18n.Unicode.isLowerCase("a"); // islowercase = true 2033 ``` 2034 2035 2036### isUpperCase<sup>9+</sup> 2037 2038static isUpperCase(char: string): boolean 2039 2040判断字符串char是否是大写字母。 2041 2042**系统能力**:SystemCapability.Global.I18n 2043 2044**参数:** 2045 2046| 参数名 | 类型 | 必填 | 说明 | 2047| ---- | ------ | ---- | ----- | 2048| char | string | 是 | 输入字符。 | 2049 2050**返回值:** 2051 2052| 类型 | 说明 | 2053| ------- | ---------------------------------------- | 2054| boolean | 返回true表示输入的字符是大写字母,返回false表示输入的字符不是大写字母。 | 2055 2056**示例:** 2057 ```ts 2058 let isuppercase: boolean = I18n.Unicode.isUpperCase("a"); // isuppercase = false 2059 ``` 2060 2061 2062### getType<sup>9+</sup> 2063 2064static getType(char: string): string 2065 2066获取输入字符串的一般类别值。 2067 2068**系统能力**:SystemCapability.Global.I18n 2069 2070**参数:** 2071 2072| 参数名 | 类型 | 必填 | 说明 | 2073| ---- | ------ | ---- | ----- | 2074| char | string | 是 | 输入字符。 | 2075 2076**返回值:** 2077 2078| 类型 | 说明 | 2079| ------ | ----------- | 2080| string | 输入字符的一般类别值。| 2081 2082一般类别值如下,更详细的介绍可以参考Unicode标准。 2083 2084| 名称 | 值 | 说明 | 2085| ---- | -------- | ---------- | 2086| U_UNASSIGNED | U_UNASSIGNED | 表示未分配和非字符代码点对应类别。 | 2087| U_GENERAL_OTHER_TYPES | U_GENERAL_OTHER_TYPES | 与 U_UNASSIGNED 相同。 | 2088| U_UPPERCASE_LETTER | U_UPPERCASE_LETTER | 表示大写字母。 | 2089| U_LOWERCASE_LETTER | U_LOWERCASE_LETTER | 表示小写字母。 | 2090| U_TITLECASE_LETTER | U_TITLECASE_LETTER | 表示首字母大写。 | 2091| U_MODIFIER_LETTER | U_MODIFIER_LETTER | 表示字母修饰符。 | 2092| U_OTHER_LETTER | U_OTHER_LETTER | 表示其它字母,不属于大写字母、小写字母、首字母大写或修饰符字母的字母。 | 2093| U_NON_SPACING_MARK | U_NON_SPACING_MARK | 表示非间距标记,如重音符号',变音符号#。 | 2094| U_ENCLOSING_MARK | U_ENCLOSING_MARK | 表示封闭标记和能围住其它字符的标记,如圆圈、方框等。 | 2095| U_COMBINING_SPACING_MARK | U_COMBINING_SPACING_MARK | 表示间距标记,如元音符号[ ]。 | 2096| U_DECIMAL_DIGIT_NUMBER | U_DECIMAL_DIGIT_NUMBER | 表示十进制数字。 | 2097| U_LETTER_NUMBER | U_LETTER_NUMBER | 表示字母数字,罗马数字。 | 2098| U_OTHER_NUMBER | U_OTHER_NUMBER | 表示其它作为加密符号和记号的数字,非阿拉伯数字的数字表示符,如@、#、(1)、①等。 | 2099| U_SPACE_SEPARATOR | U_SPACE_SEPARATOR | 表示空白分隔符,如空格符、不间断空格、固定宽度的空白符。 | 2100| U_LINE_SEPARATOR | U_LINE_SEPARATOR | 表示行分隔符。| 2101| U_PARAGRAPH_SEPARATOR | U_PARAGRAPH_SEPARATOR | 表示段落分割符。 | 2102| U_CONTROL_CHAR | U_CONTROL_CHAR | 表示控制字符。 | 2103| U_FORMAT_CHAR | U_FORMAT_CHAR | 表示格式字符。 | 2104| U_PRIVATE_USE_CHAR | U_PRIVATE_USE_CHAR | 表示私人使用区代码点类别,例如公司 logo。 | 2105| U_SURROGATE | U_SURROGATE | 表示代理项,在UTF-16中用来表示补充字符的方法。 | 2106| U_DASH_PUNCTUATION | U_DASH_PUNCTUATION | 表示短划线标点。 | 2107| U_START_PUNCTUATION | U_START_PUNCTUATION | 表示开始标点,如左括号。 | 2108| U_END_PUNCTUATION | U_END_PUNCTUATION | 表示结束标点,如右括号。 | 2109| U_INITIAL_PUNCTUATION | U_INITIAL_PUNCTUATION | 表示前引号,如左双引号、左单引号。 | 2110| U_FINAL_PUNCTUATION | U_FINAL_PUNCTUATION | 表示后引号,如右双引号、右单引号。 | 2111| U_CONNECTOR_PUNCTUATION | U_CONNECTOR_PUNCTUATION | 表示连接符标点。 | 2112| U_OTHER_PUNCTUATION | U_OTHER_PUNCTUATION | 表示其他标点。 | 2113| U_MATH_SYMBOL | U_MATH_SYMBOL | 表示数学符号。 | 2114| U_CURRENCY_SYMBOL | U_CURRENCY_SYMBOL | 表示货币符号。 | 2115| U_MODIFIER_SYMBOL | U_MODIFIER_SYMBOL | 表示修饰符号。 | 2116| U_OTHER_SYMBOL | U_OTHER_SYMBOL | 表示其它符号。 | 2117 2118**示例:** 2119 ```ts 2120 let type: string = I18n.Unicode.getType("a"); // type = "U_LOWERCASE_LETTER" 2121 ``` 2122 2123## I18NUtil<sup>9+</sup> 2124 2125 2126### unitConvert<sup>9+</sup> 2127 2128static unitConvert(fromUnit: UnitInfo, toUnit: UnitInfo, value: number, locale: string, style?: string): string 2129 2130将fromUnit的单位转换为toUnit的单位,并根据区域与风格进行格式化。 2131 2132**系统能力**:SystemCapability.Global.I18n 2133 2134**参数:** 2135 2136| 参数名 | 类型 | 必填 | 说明 | 2137| -------- | ---------------------- | ---- | ---------------------------------------- | 2138| fromUnit | [UnitInfo](#unitinfo8) | 是 | 需要转换的单位。 | 2139| toUnit | [UnitInfo](#unitinfo8) | 是 | 转换成的目标单位。 | 2140| value | number | 是 | 需要转换的单位的数量值。 | 2141| locale | string | 是 | 格式化时使用的区域参数,如:zh-Hans-CN。 | 2142| style | string | 否 | 格式化使用的风格,取值包括:"long", "short", "narrow"。默认值:short。 | 2143 2144**返回值:** 2145 2146| 类型 | 说明 | 2147| ------ | ----------------------- | 2148| string | 按照toUnit的单位格式化后,得到的字符串。 | 2149 2150**示例:** 2151 ```ts 2152 let fromUnit: I18n.UnitInfo = {unit: "cup", measureSystem: "US"}; 2153 let toUnit: I18n.UnitInfo = {unit: "liter", measureSystem: "SI"}; 2154 let res: string = I18n.I18NUtil.unitConvert(fromUnit, toUnit, 1000, "en-US", "long"); // res = 236.588 liters 2155 ``` 2156 2157 2158### getDateOrder<sup>9+</sup> 2159 2160static getDateOrder(locale: string): string 2161 2162获取该区域日期中年、月、日的排列顺序。 2163 2164**系统能力**:SystemCapability.Global.I18n 2165 2166**参数:** 2167 2168| 参数名 | 类型 | 必填 | 说明 | 2169| ------ | ------ | ---- | ------------------------- | 2170| locale | string | 是 | 格式化时使用的区域参数,如:zh-Hans-CN。 | 2171 2172**返回值:** 2173 2174| 类型 | 说明 | 2175| ------ | ------------------- | 2176| string | 返回该区域年、月、日的排列顺序。 | 2177 2178**示例:** 2179 ```ts 2180 let order: string = I18n.I18NUtil.getDateOrder("zh-CN"); // order = "y-L-d" 2181 ``` 2182 2183 2184## Normalizer<sup>10+</sup> 2185 2186### getInstance<sup>10+</sup> 2187 2188static getInstance(mode: NormalizerMode): Normalizer 2189 2190获取文本正则化对象。 2191 2192**系统能力**:SystemCapability.Global.I18n 2193 2194**参数:** 2195 2196| 参数名 | 类型 | 必填 | 说明 | 2197| ------ | ------ | ---- | ------------------------- | 2198| mode | [NormalizerMode](#normalizermode10) | 是 | 文本正则化范式。 | 2199 2200**返回值:** 2201 2202| 类型 | 说明 | 2203| ------ | ------------------- | 2204| [Normalizer](#normalizer10) | 返回指定范式的文本正则化对象。 | 2205 2206**示例:** 2207 ```ts 2208 let normalizer: I18n.Normalizer = I18n.Normalizer.getInstance(I18n.NormalizerMode.NFC); 2209 ``` 2210 2211 2212### normalize<sup>10+</sup> 2213 2214normalize(text: string): string 2215 2216对字符串进行正则化。 2217 2218**系统能力**:SystemCapability.Global.I18n 2219 2220**参数:** 2221 2222| 参数名 | 类型 | 必填 | 说明 | 2223| ------ | ------ | ---- | ------------------------- | 2224| text | string | 是 | 待正则化的字符串。 | 2225 2226**返回值:** 2227 2228| 类型 | 说明 | 2229| ------ | ------------------- | 2230| string | 正则化后的字符串。 | 2231 2232**示例:** 2233 ```ts 2234 let normalizer: I18n.Normalizer = I18n.Normalizer.getInstance(I18n.NormalizerMode.NFC); 2235 let normalizedText: string = normalizer.normalize('\u1E9B\u0323'); // normalizedText = \u1E9B\u0323 2236 ``` 2237 2238 2239## NormalizerMode<sup>10+</sup> 2240 2241表示文本正则化范式的枚举。 2242 2243**系统能力:** :SystemCapability.Global.I18n 2244 2245| 名称 | 值 | 说明 | 2246| -------- | -------- | -------- | 2247| NFC | 1 | NFC范式。 | 2248| NFD | 2 | NFD范式。 | 2249| NFKC | 3 | NFKC范式。 | 2250| NFKD | 4 | NFKD范式。 | 2251 2252 2253## SystemLocaleManager<sup>10+</sup> 2254 2255 2256### constructor<sup>10+</sup> 2257 2258constructor() 2259 2260创建SystemLocaleManager对象。 2261 2262**系统接口**:此接口为系统接口。 2263 2264**系统能力**:SystemCapability.Global.I18n 2265 2266**示例:** 2267 ```ts 2268 let systemLocaleManager: I18n.SystemLocaleManager = new I18n.SystemLocaleManager(); 2269 ``` 2270 2271 2272### getLanguageInfoArray<sup>10+</sup> 2273 2274getLanguageInfoArray(languages: Array<string>, options?: SortOptions): Array<LocaleItem> 2275 2276获取语言排序数组。 2277 2278**系统接口**:此接口为系统接口。 2279 2280**系统能力**:SystemCapability.Global.I18n 2281 2282**参数:** 2283 2284| 参数名 | 类型 | 必填 | 说明 | 2285| --------- | ------------- | ---- | ------------- | 2286| languages | Array<string> | 是 | 待排序语言列表。| 2287| options | [SortOptions](#sortoptions10) | 否 | 语言排序选项。 | 2288 2289**返回值:** 2290 2291| 类型 | 说明 | 2292| ----------------- | -------------------- | 2293| Array<[LocaleItem](#localeitem10)> | 排序后的语言列表信息。 | 2294 2295**错误码:** 2296 2297以下错误码的详细介绍请参见[ohos.i18n错误码](../errorcodes/errorcode-i18n.md)。 2298 2299| 错误码ID | 错误信息 | 2300| ------ | ---------------------- | 2301| 890001 | param value not valid | 2302 2303**示例:** 2304 ```ts 2305 import { BusinessError } from '@ohos.base'; 2306 2307 // 当系统语言为zh-Hans,系统地区为CN,系统Locale为zh-Hans-CN时 2308 let systemLocaleManager: I18n.SystemLocaleManager = new I18n.SystemLocaleManager(); 2309 let languages: string[] = ["zh-Hans", "en-US", "pt", "ar"]; 2310 let sortOptions: I18n.SortOptions = {locale: "zh-Hans-CN", isUseLocalName: true, isSuggestedFirst: true}; 2311 try { 2312 // 排序后的语言顺序为: [zh-Hans, en-US, pt, ar] 2313 let sortedLanguages: Array<I18n.LocaleItem> = systemLocaleManager.getLanguageInfoArray(languages, sortOptions); 2314 } catch(error) { 2315 let err: BusinessError = error as BusinessError; 2316 console.error(`call systemLocaleManager.getLanguageInfoArray failed, error code: ${err.code}, message: ${err.message}.`); 2317 } 2318 ``` 2319 2320 2321### getRegionInfoArray<sup>10+</sup> 2322 2323getRegionInfoArray(regions: Array<string>, options?: SortOptions): Array<LocaleItem> 2324 2325获取国家或地区排序数组。 2326 2327**系统接口**:此接口为系统接口。 2328 2329**系统能力**:SystemCapability.Global.I18n 2330 2331**参数:** 2332 2333| 参数名 | 类型 | 必填 | 说明 | 2334| --------- | ------------- | ---- | ------------- | 2335| regions | Array<string> | 是 | 待排序的国家或地区列表。| 2336| options | [SortOptions](#sortoptions10) | 否 | 国家或地区排序选项。默认值:locale的默认值为系统Locale,isUseLocalName的默认值为false,isSuggestedFirst的默认值为true。 | 2337 2338**返回值:** 2339 2340| 类型 | 说明 | 2341| ----------------- | -------------------- | 2342| Array<[LocaleItem](#localeitem10)> | 排序后的国家或地区列表信息。 | 2343 2344**错误码:** 2345 2346以下错误码的详细介绍请参见[ohos.i18n错误码](../errorcodes/errorcode-i18n.md)。 2347 2348| 错误码ID | 错误信息 | 2349| ------ | ---------------------- | 2350| 890001 | param value not valid | 2351 2352**示例:** 2353 ```ts 2354 import { BusinessError } from '@ohos.base'; 2355 2356 // 当系统语言为zh-Hans,系统地区为CN,系统Locale为zh-Hans-CN时 2357 let systemLocaleManager: I18n.SystemLocaleManager = new I18n.SystemLocaleManager(); 2358 let regions: string[] = ["CN", "US", "PT", "EG"]; 2359 let sortOptions: I18n.SortOptions = {locale: "zh-Hans-CN", isUseLocalName: false, isSuggestedFirst: true}; 2360 try { 2361 // 排序后的地区顺序为: [CN, EG, US, PT] 2362 let sortedRegions: Array<I18n.LocaleItem> = systemLocaleManager.getRegionInfoArray(regions, sortOptions); 2363 } catch(error) { 2364 let err: BusinessError = error as BusinessError; 2365 console.error(`call systemLocaleManager.getRegionInfoArray failed, error code: ${err.code}, message: ${err.message}.`); 2366 } 2367 ``` 2368 2369### getTimeZoneCityItemArray<sup>10+</sup> 2370 2371static getTimeZoneCityItemArray(): Array<TimeZoneCityItem> 2372 2373获取时区城市组合信息的数组。 2374 2375**系统接口**:此接口为系统接口。 2376 2377**系统能力**:SystemCapability.Global.I18n 2378 2379**返回值:** 2380 2381| 类型 | 说明 | 2382| ----------------- | -------------------- | 2383| Array<[TimeZoneCityItem](#timezonecityitem10)> | 排序后的时区城市组合信息的数组。 | 2384 2385**示例:** 2386 ```ts 2387 import { BusinessError } from '@ohos.base'; 2388 2389 try { 2390 let timeZoneCityItemArray: Array<I18n.TimeZoneCityItem> = I18n.SystemLocaleManager.getTimeZoneCityItemArray(); 2391 for (let i = 0; i < timeZoneCityItemArray.length; i++) { 2392 console.log(timeZoneCityItemArray[i].zoneId + ", " + timeZoneCityItemArray[i].cityId + ", " + timeZoneCityItemArray[i].cityDisplayName + 2393 ", " + timeZoneCityItemArray[i].offset + "\r\n"); 2394 } 2395 } catch(error) { 2396 let err: BusinessError = error as BusinessError; 2397 console.error(`call SystemLocaleManager.getTimeZoneCityItemArray failed, error code: ${err.code}, message: ${err.message}.`); 2398 } 2399 ``` 2400 2401## LocaleItem<sup>10+</sup> 2402 2403SystemLocaleManager对语言或国家地区列表的排序结果信息项。 2404 2405**系统接口**:此接口为系统接口。 2406 2407**系统能力**:SystemCapability.Global.I18n 2408 2409| 名称 | 类型 | 必填 | 说明 | 2410| --------------- | --------------- | ------ | --------------------------------------- | 2411| id | string | 是 | 语言代码或国家地区代码,如"zh"、"CN"。 | 2412| suggestionType | [SuggestionType](#suggestiontype10) | 是 | 语言或国家地区推荐类型。 | 2413| displayName | string | 是 | id在SystemLocaleManager的Locale下的表示。| 2414| localName | string | 否 | id的本地名称。 | 2415 2416## TimeZoneCityItem<sup>10+</sup> 2417 2418封装时区城市组合信息的类型。 2419 2420**系统接口**:此接口为系统接口。 2421 2422**系统能力**:SystemCapability.Global.I18n 2423 2424| 名称 | 类型 | 必填 | 说明 | 2425| --------------- | --------------- | ------ | --------------------------------------- | 2426| zoneId | string | 是 | 时区Id,例如Asia/Shanghai。 | 2427| cityId | string | 是 | 城市Id,例如Shanghai。 | 2428| cityDisplayName | string | 是 | 城市Id在系统Locale下显示的名称。 | 2429| offset | int | 是 | 时区Id的偏移量。 | 2430| zoneDisplayName | string | 是 | 时区Id在系统Locale下显示的名称。 | 2431| rawOffset | int | 否 | 时区Id的行偏移量。 | 2432 2433 2434## SuggestionType<sup>10+</sup> 2435 2436语言或国家地区的推荐类型。 2437 2438**系统接口**:此接口为系统接口。 2439 2440**系统能力**:SystemCapability.Global.I18n 2441 2442| 名称 | 值 | 说明 | 2443| ---------------------- | ---- | ---- | 2444| SUGGESTION_TYPE_NONE | 0x00 | 非推荐语言或国家地区。 | 2445| SUGGESTION_TYPE_RELATED| 0x01 | 系统语言推荐的国家地区或系统国家地区推荐的语言。 | 2446| SUGGESTION_TYPE_SIM | 0x02 | Sim卡国家地区推荐的语言。 | 2447 2448 2449## SortOptions<sup>10+<sup> 2450 2451语言或国家地区排序选项。 2452 2453**系统接口**:此接口为系统接口。 2454 2455**系统能力**:SystemCapability.Global.I18n 2456 2457| 名称 | 类型 | 必填 | 说明 | 2458| --------------- | --------------- | ---- | --------------------------------------- | 2459| locale | string | 否 | 区域代码,如"zh-Hans-CN"。locale属性默认值为系统Locale。 | 2460| isUseLocalName | boolean | 否 | 表示是否使用本地名称进行排序。若调用方法为getLanguageInfoArray,isUseLocalName属性默认值为true。若调用方法为getRegionInfoArray,isUseLocalName属性默认值为false。 | 2461| isSuggestedFirst | boolean | 否 | 表示是否将推荐语言或国家地区在排序结果中置顶。isSuggestedFirst属性默认值为true。 | 2462 2463 2464## I18n.getDisplayCountry<sup>(deprecated)</sup> 2465 2466getDisplayCountry(country: string, locale: string, sentenceCase?: boolean): string 2467 2468获取指定国家的本地化显示文本。 2469 2470从API version 9开始不再维护,建议使用[System.getDisplayCountry](#getdisplaycountry9)代替。 2471 2472**系统能力**:SystemCapability.Global.I18n 2473 2474**参数:** 2475 2476| 参数名 | 类型 | 必填 | 说明 | 2477| ------------ | ------- | ---- | ---------------- | 2478| country | string | 是 | 指定国家。 | 2479| locale | string | 是 | 显示指定国家的区域ID。 | 2480| sentenceCase | boolean | 否 | 本地化显示文本是否要首字母大写。默认值:true。 | 2481 2482**返回值:** 2483 2484| 类型 | 说明 | 2485| ------ | ------------- | 2486| string | 指定国家的本地化显示文本。 | 2487 2488**示例:** 2489 ```ts 2490 let countryName: string = I18n.getDisplayCountry("zh-CN", "en-GB", true); // countryName = true 2491 countryName = I18n.getDisplayCountry("zh-CN", "en-GB"); // countryName = true 2492 ``` 2493 2494 2495## I18n.getDisplayLanguage<sup>(deprecated)</sup> 2496 2497getDisplayLanguage(language: string, locale: string, sentenceCase?: boolean): string 2498 2499获取指定语言的本地化显示文本。 2500 2501从API version 9开始不再维护,建议使用[System.getDisplayLanguage](#getdisplaylanguage9)代替。 2502 2503**系统能力**:SystemCapability.Global.I18n 2504 2505**参数:** 2506 2507| 参数名 | 类型 | 必填 | 说明 | 2508| ------------ | ------- | ---- | ---------------- | 2509| language | string | 是 | 指定语言。 | 2510| locale | string | 是 | 显示指定语言的区域ID。 | 2511| sentenceCase | boolean | 否 | 本地化显示文本是否要首字母大写。默认值:true。 | 2512 2513**返回值:** 2514 2515| 类型 | 说明 | 2516| ------ | ------------- | 2517| string | 指定语言的本地化显示文本。 | 2518 2519**示例:** 2520 ```ts 2521 let languageName: string = I18n.getDisplayLanguage("zh", "en-GB", true); // languageName = "Chinese" 2522 languageName = I18n.getDisplayLanguage("zh", "en-GB"); // languageName = "Chinese" 2523 ``` 2524 2525 2526## I18n.getSystemLanguage<sup>(deprecated)</sup> 2527 2528getSystemLanguage(): string 2529 2530获取系统语言。 2531 2532从API version 9开始不再维护,建议使用[System.getSystemLanguage](#getsystemlanguage9)代替。 2533 2534**系统能力**:SystemCapability.Global.I18n 2535 2536**返回值:** 2537 2538| 类型 | 说明 | 2539| ------ | ------- | 2540| string | 系统语言ID。 | 2541 2542**示例:** 2543 ```ts 2544 let systemLanguage: string = I18n.getSystemLanguage(); // 返回当前系统语言 2545 ``` 2546 2547 2548## I18n.getSystemRegion<sup>(deprecated)</sup> 2549 2550getSystemRegion(): string 2551 2552获取系统地区。 2553 2554从API version 9开始不再维护,建议使用[System.getSystemRegion](#getsystemregion9)代替。 2555 2556**系统能力**:SystemCapability.Global.I18n 2557 2558**返回值:** 2559 2560| 类型 | 说明 | 2561| ------ | ------- | 2562| string | 系统地区ID。 | 2563 2564**示例:** 2565 ```ts 2566 let region: string = I18n.getSystemRegion(); // 返回当前系统地区 2567 ``` 2568 2569 2570## I18n.getSystemLocale<sup>(deprecated)</sup> 2571 2572getSystemLocale(): string 2573 2574获取系统区域。 2575 2576从API version 9开始不再维护,建议使用[System.getSystemLocale](#getsystemlocale9)代替。 2577 2578**系统能力**:SystemCapability.Global.I18n 2579 2580**返回值:** 2581 2582| 类型 | 说明 | 2583| ------ | ------- | 2584| string | 系统区域ID。 | 2585 2586**示例:** 2587 ```ts 2588 let locale: string = I18n.getSystemLocale(); // 返回系统Locale 2589 ``` 2590 2591 2592## I18n.is24HourClock<sup>(deprecated)</sup> 2593 2594is24HourClock(): boolean 2595 2596判断系统时间是否为24小时制。 2597 2598从API version 9开始不再维护,建议使用[System.is24HourClock](#is24hourclock9)代替。 2599 2600**系统能力**:SystemCapability.Global.I18n 2601 2602**返回值:** 2603 2604| 类型 | 说明 | 2605| ------- | ---------------------------------------- | 2606| boolean | 返回true,表示系统24小时开关开启;返回false,表示系统24小时开关关闭。 | 2607 2608**示例:** 2609 ```ts 2610 let is24HourClock: boolean = I18n.is24HourClock(); 2611 ``` 2612 2613 2614## I18n.set24HourClock<sup>(deprecated)</sup> 2615 2616set24HourClock(option: boolean): boolean 2617 2618修改系统时间的24小时制设置。 2619 2620从API version 9开始不再维护,建议使用[System.set24HourClock](#set24hourclock9)代替。 2621 2622**需要权限**:ohos.permission.UPDATE_CONFIGURATION 2623 2624**系统能力**:SystemCapability.Global.I18n 2625 2626**参数:** 2627 2628| 参数名 | 类型 | 必填 | 说明 | 2629| ------ | ------- | ---- | ---------------------------------------- | 2630| option | boolean | 是 | option为true,表示开启系统24小时制开关;返回false,表示关闭系统24小时开关。 | 2631 2632**返回值:** 2633 2634| 类型 | 说明 | 2635| ------- | ----------------------------- | 2636| boolean | 返回true,表示修改成功;返回false,表示修改失败。 | 2637 2638**示例:** 2639 ```ts 2640 // 将系统时间设置为24小时制 2641 let success: boolean = I18n.set24HourClock(true); 2642 ``` 2643 2644 2645## I18n.addPreferredLanguage<sup>(deprecated)</sup> 2646 2647addPreferredLanguage(language: string, index?: number): boolean 2648 2649在系统偏好语言列表中的指定位置添加偏好语言。 2650 2651从API version 8开始支持,从API version 9开始不再维护,建议使用[System.addPreferredLanguage](#addpreferredlanguage9)代替。 2652 2653**需要权限**:ohos.permission.UPDATE_CONFIGURATION 2654 2655**系统能力**:SystemCapability.Global.I18n 2656 2657**参数:** 2658 2659| 参数名 | 类型 | 必填 | 说明 | 2660| -------- | ------ | ---- | ---------- | 2661| language | string | 是 | 待添加的偏好语言。 | 2662| index | number | 否 | 偏好语言的添加位置。默认值:系统偏好语言列表长度。 | 2663 2664**返回值:** 2665 2666| 类型 | 说明 | 2667| ------- | ----------------------------- | 2668| boolean | 返回true,表示添加成功;返回false,表示添加失败。 | 2669 2670**示例:** 2671 ```ts 2672 // 将语言zh-CN添加到系统偏好语言列表中 2673 let language: string = 'zh-CN'; 2674 let index: number = 0; 2675 let success: boolean = I18n.addPreferredLanguage(language, index); 2676 ``` 2677 2678 2679## I18n.removePreferredLanguage<sup>(deprecated)</sup> 2680 2681removePreferredLanguage(index: number): boolean 2682 2683删除系统偏好语言列表中指定位置的偏好语言。 2684 2685从API version 8开始支持,从API version 9开始不再维护,建议使用[System.removePreferredLanguage](#removepreferredlanguage9)代替。 2686 2687**需要权限**:ohos.permission.UPDATE_CONFIGURATION 2688 2689**系统能力**:SystemCapability.Global.I18n 2690 2691**参数:** 2692 2693| 参数名 | 类型 | 必填 | 说明 | 2694| ----- | ------ | ---- | --------------------- | 2695| index | number | 是 | 待删除偏好语言在系统偏好语言列表中的位置。 | 2696 2697**返回值:** 2698 2699| 类型 | 说明 | 2700| ------- | ----------------------------- | 2701| boolean | 返回true,表示删除成功;返回false,表示删除失败。 | 2702 2703**示例:** 2704 ```ts 2705 // 删除系统偏好语言列表中的第一个偏好语言 2706 let index: number = 0; 2707 let success: boolean = I18n.removePreferredLanguage(index); 2708 ``` 2709 2710 2711## I18n.getPreferredLanguageList<sup>(deprecated)</sup> 2712 2713getPreferredLanguageList(): Array<string> 2714 2715获取系统偏好语言列表。 2716 2717从API version 8开始支持,从API version 9开始不再维护,建议使用[System.getPreferredLanguageList](#getpreferredlanguagelist9)代替。 2718 2719**系统能力**:SystemCapability.Global.I18n 2720 2721**返回值:** 2722 2723| 类型 | 说明 | 2724| ------------------- | --------- | 2725| Array<string> | 系统偏好语言列表。 | 2726 2727**示例:** 2728 ```ts 2729 let preferredLanguageList: Array<string> = I18n.getPreferredLanguageList(); // 获取系统偏好语言列表 2730 ``` 2731 2732 2733## I18n.getFirstPreferredLanguage<sup>(deprecated)</sup> 2734 2735getFirstPreferredLanguage(): string 2736 2737获取偏好语言列表中的第一个偏好语言。 2738 2739从API version 8开始支持,从API version 9开始不再维护,建议使用[System.getFirstPreferredLanguage](#getfirstpreferredlanguage9)代替。 2740 2741**系统能力**:SystemCapability.Global.I18n 2742 2743**返回值:** 2744 2745| 类型 | 说明 | 2746| ------ | -------------- | 2747| string | 偏好语言列表中的第一个语言。 | 2748 2749**示例:** 2750 ```ts 2751 let firstPreferredLanguage: string = I18n.getFirstPreferredLanguage(); 2752 ``` 2753 2754 2755## Util<sup>(deprecated)</sup> 2756 2757 2758### unitConvert<sup>(deprecated)</sup> 2759 2760static unitConvert(fromUnit: UnitInfo, toUnit: UnitInfo, value: number, locale: string, style?: string): string 2761 2762将fromUnit的单位转换为toUnit的单位,并根据区域与风格进行格式化。 2763 2764从API version 8开始支持,从API version 9开始不再维护,建议使用[unitConvert](#unitconvert9)代替。 2765 2766**系统能力**:SystemCapability.Global.I18n 2767 2768**参数:** 2769 2770| 参数名 | 类型 | 必填 | 说明 | 2771| -------- | ---------------------- | ---- | ---------------------------------------- | 2772| fromUnit | [UnitInfo](#unitinfo8) | 是 | 要被转换的单位。 | 2773| toUnit | [UnitInfo](#unitinfo8) | 是 | 要转换为的单位。 | 2774| value | number | 是 | 要被转换的单位的数量值。 | 2775| locale | string | 是 | 格式化时使用的区域参数,如:zh-Hans-CN。 | 2776| style | string | 否 | 格式化使用的风格,取值包括:"long", "short", "narrow"。默认值:short。 | 2777 2778**返回值:** 2779 2780| 类型 | 说明 | 2781| ------ | ----------------------- | 2782| string | 按照toUnit的单位格式化后,得到的字符串。 | 2783 2784 2785## Character<sup>(deprecated)</sup> 2786 2787 2788### isDigit<sup>(deprecated)</sup> 2789 2790static isDigit(char: string): boolean 2791 2792判断字符串char是否是数字。 2793 2794从API version 8开始支持,从API version 9开始不再维护,建议使用[isDigit](#isdigit9)代替。 2795 2796**系统能力**:SystemCapability.Global.I18n 2797 2798**参数:** 2799 2800| 参数名 | 类型 | 必填 | 说明 | 2801| ---- | ------ | ---- | ----- | 2802| char | string | 是 | 输入字符。 | 2803 2804**返回值:** 2805 2806| 类型 | 说明 | 2807| ------- | ------------------------------------ | 2808| boolean | 返回true表示输入的字符是数字,返回false表示输入的字符不是数字。 | 2809 2810 2811### isSpaceChar<sup>(deprecated)</sup> 2812 2813static isSpaceChar(char: string): boolean 2814 2815判断字符串char是否是空格符。 2816 2817从API version 8开始支持,从API version 9开始不再维护,建议使用[isSpaceChar](#isspacechar9)代替。 2818 2819**系统能力**:SystemCapability.Global.I18n 2820 2821**参数:** 2822 2823| 参数名 | 类型 | 必填 | 说明 | 2824| ---- | ------ | ---- | ----- | 2825| char | string | 是 | 输入字符。 | 2826 2827**返回值:** 2828 2829| 类型 | 说明 | 2830| ------- | -------------------------------------- | 2831| boolean | 返回true表示输入的字符是空格符,返回false表示输入的字符不是空格符。 | 2832 2833 2834### isWhitespace<sup>(deprecated)</sup> 2835 2836static isWhitespace(char: string): boolean 2837 2838判断字符串char是否是空白符。 2839 2840从API version 8开始支持,从API version 9开始不再维护,建议使用[isWhitespace](#iswhitespace9)代替。 2841 2842**系统能力**:SystemCapability.Global.I18n 2843 2844**参数:** 2845 2846| 参数名 | 类型 | 必填 | 说明 | 2847| ---- | ------ | ---- | ----- | 2848| char | string | 是 | 输入字符。 | 2849 2850**返回值:** 2851 2852| 类型 | 说明 | 2853| ------- | -------------------------------------- | 2854| boolean | 返回true表示输入的字符是空白符,返回false表示输入的字符不是空白符。 | 2855 2856 2857### isRTL<sup>(deprecated)</sup> 2858 2859static isRTL(char: string): boolean 2860 2861判断字符串char是否是从右到左语言的字符。 2862 2863从API version 8开始支持,从API version 9开始不再维护,建议使用[isRTL](#isrtl9)代替。 2864 2865**系统能力**:SystemCapability.Global.I18n 2866 2867**参数:** 2868 2869| 参数名 | 类型 | 必填 | 说明 | 2870| ---- | ------ | ---- | ----- | 2871| char | string | 是 | 输入字符。 | 2872 2873**返回值:** 2874 2875| 类型 | 说明 | 2876| ------- | ---------------------------------------- | 2877| boolean | 返回true表示输入的字符是从右到左语言的字符,返回false表示输入的字符不是从右到左语言的字符。 | 2878 2879 2880### isIdeograph<sup>(deprecated)</sup> 2881 2882static isIdeograph(char: string): boolean 2883 2884判断字符串char是否是表意文字。 2885 2886从API version 8开始支持,从API version 9开始不再维护,建议使用[isIdeograph](#isideograph9)代替。 2887 2888**系统能力**:SystemCapability.Global.I18n 2889 2890**参数:** 2891 2892| 参数名 | 类型 | 必填 | 说明 | 2893| ---- | ------ | ---- | ----- | 2894| char | string | 是 | 输入字符。 | 2895 2896**返回值:** 2897 2898| 类型 | 说明 | 2899| ------- | ---------------------------------------- | 2900| boolean | 返回true表示输入的字符是表意文字,返回false表示输入的字符不是表意文字。 | 2901 2902 2903### isLetter<sup>(deprecated)</sup> 2904 2905static isLetter(char: string): boolean 2906 2907判断字符串char是否是字母。 2908 2909从API version 8开始支持,从API version 9开始不再维护,建议使用[isLetter](#isletter9)代替。 2910 2911**系统能力**:SystemCapability.Global.I18n 2912 2913**参数:** 2914 2915| 参数名 | 类型 | 必填 | 说明 | 2916| ---- | ------ | ---- | ----- | 2917| char | string | 是 | 输入字符。 | 2918 2919**返回值:** 2920 2921| 类型 | 说明 | 2922| ------- | ------------------------------------ | 2923| boolean | 返回true表示输入的字符是字母,返回false表示输入的字符不是字母。 | 2924 2925 2926### isLowerCase<sup>(deprecated)</sup> 2927 2928static isLowerCase(char: string): boolean 2929 2930判断字符串char是否是小写字母。 2931 2932从API version 8开始支持,从API version 9开始不再维护,建议使用[isLowerCase](#islowercase9)代替。 2933 2934**系统能力**:SystemCapability.Global.I18n 2935 2936**参数:** 2937 2938| 参数名 | 类型 | 必填 | 说明 | 2939| ---- | ------ | ---- | ----- | 2940| char | string | 是 | 输入字符。 | 2941 2942**返回值:** 2943 2944| 类型 | 说明 | 2945| ------- | ---------------------------------------- | 2946| boolean | 返回true表示输入的字符是小写字母,返回false表示输入的字符不是小写字母。 | 2947 2948 2949### isUpperCase<sup>(deprecated)</sup> 2950 2951static isUpperCase(char: string): boolean 2952 2953判断字符串char是否是大写字母。 2954 2955从API version 8开始支持,从API version 9开始不再维护,建议使用[isUpperCase](#isuppercase9)代替。 2956 2957**系统能力**:SystemCapability.Global.I18n 2958 2959**参数:** 2960 2961| 参数名 | 类型 | 必填 | 说明 | 2962| ---- | ------ | ---- | ----- | 2963| char | string | 是 | 输入字符。 | 2964 2965**返回值:** 2966 2967| 类型 | 说明 | 2968| ------- | ---------------------------------------- | 2969| boolean | 返回true表示输入的字符是大写字母,返回false表示输入的字符不是大写字母。 | 2970 2971 2972### getType<sup>(deprecated)</sup> 2973 2974static getType(char: string): string 2975 2976获取输入字符串的一般类别值。 2977 2978从API version 8开始支持,从API version 9开始不再维护,建议使用[getType](#gettype9)代替。 2979 2980**系统能力**:SystemCapability.Global.I18n 2981 2982**参数:** 2983 2984| 参数名 | 类型 | 必填 | 说明 | 2985| ---- | ------ | ---- | ----- | 2986| char | string | 是 | 输入字符。 | 2987 2988**返回值:** 2989 2990| 类型 | 说明 | 2991| ------ | ----------- | 2992| string | 输入字符的一般类别值。 | 2993