fbpx
维基百科

國際統一碼部件

國際統一碼部件(英語:International Components for Unicode,縮寫:ICU,中文譯名根據聯盟官方譯名[1])是成熟的C / C++Java库的开源項目的函式庫,用於支援統一碼 、软件国际化和软件全球化。 ICU 可广泛移植到许多操作系统和环境中。對於不同平台上,以及在 C、C++ 和 Java 软件的应用程序,它可以提供相同的结果。IBM和许多其他公司赞助、支持和使用它。 [2]ICU 項目也已成為統一碼聯盟技术委员。

ICU 提供以下服务: 統一碼文本处理、完整字符属性和字符集转换; 統一碼正则表达式;完整的統一碼集;字符、单词和行边界;基於语言的定序和搜索;规范化、大小写转换和脚本音译;通過通用當地數據儲存庫(CLDR)提供全面的语言环境数据和资源包架构;多種日历时区;以及基于规则的日期、时间、数字、货币和消息的格式化和解析。 ICU過去曾為阿拉伯語、希伯來語、印度語和泰語提供複雜文字編排服务,但在第 54 版中已弃用,并在第 58 版中完全删除,取而代之的是HarfBuzz[3]

ICU 提供比 C 和 C++ 标准库更广泛的国际化设施。 ICU 67 支持Unicode 13.0并处理英國脫歐的問題。 ICU 64 支持Unicode 12.0 ,而 ICU 64.2 增加了对 Unicode 12.1 的支持,即当前日本令和时代的单一新符号(但对它的支持也已向后移植到 ICU 4.8.2 的旧 ICU 版本)。 ICU 58(支持 Unicode 9.0)是支持旧平台(如Windows XPWindows Vista )的最后一个版本。对AIXSolarisz/OS的支持在更高版本中也可能受到限制(即构建取决于编译器支持)。 [4]Windows 10版本 1703 起,ICU 已作为标准组件包含在Microsoft Windows[5]

ICU 过去一直使用UTF-16 ,但只有用於 Java;而 C/C++ 使用 UTF-8 [6],包括正确处理“非法 UTF-8”。 [7]

起源与发展 编辑

1996 年初,Taligent 併入 IBM 後,昇陽電腦决定新的 Java 语言应该更好地支持国际化。由于 Taligent 拥有使用此类技术的经验并且地理位置接近,因此他们的 Text 和 International 小组被要求将国际类作为JDK 1.1 国际化API 貢獻JDK[8]该代码的很大一部分仍然存在于java.text和java.util包中。 Java 的后续版本都添加了进一步的国际化功能。

然后,Java 国际化类被移植到 C++ 和 C [9],称为 ICU4C(“ICU for C”)的库的一部分。 ICU 项目还提供了 ICU4J(“ICU for Java”),它添加了标准 Java 库中不存在的功能。 ICU4C 和 ICU4J 非常相似,但并不完全相同;例如,ICU4C 包含正则表达式的 API,而 ICU4J 則沒有。随着时间的推移,这两个框架都得到了增强,以支援統一碼和通用當地數據儲存庫的新功能。

1999 年,ICU 以开源项目的方式发布,原名称为 IBM Classes for Unicode,后来更名为 International Components For Unicode。 [10] 2016 年 5 月,ICU 项目加入統一碼联盟成為其技術委員(ICU-TC),现在库源是以統一碼许可來分发。 [11]

MessageFormat 编辑

MessageFormat 是 ICU 中的類別,它是一个格式化系统,允许使用任意数量的参数来控制复数形式( pluralselectordinal ),或使用更一般的選擇-切換樣式(select)來處理如的語法。这些语句可以嵌套。 [12] ICU MessageFormat 是通过将复数和选择系统添加到Java SE中的同名系统而创建的。

另見 编辑

参考 编辑

  1. ^ . www.unicode.org. [2021-11-17]. (原始内容存档于2021-10-10). 
  2. ^ . site.icu-project.org. [2021-11-17]. (原始内容存档于2021-08-27). 
  3. ^ . userguide.icu-project.org. [2021-11-17]. (原始内容存档于2021-08-28). 
  4. ^ . site.icu-project.org. [2019-10-20]. (原始内容存档于2021-07-01). 
  5. ^ Chen, Raymond. . The Old New Thing. Microsoft. [2021-11-17]. (原始内容存档于2022-04-17). 
  6. ^ . userguide.icu-project.org. [2018-04-03]. (原始内容存档于2021-04-17). 
  7. ^ . bugs.icu-project.org. [2018-04-03]. (原始内容存档于2019-08-04). 
  8. ^ Laura Werner. . 1999 [2021-11-17]. (原始内容存档于2021-11-17). 
  9. ^ . userguide.icu-project.org. [2021-11-17]. (原始内容存档于2021-08-28). 
  10. ^ . [2021-11-17]. (原始内容存档于2021-08-28). 
  11. ^ . Unicode, Inc. 2016-05-16 [2016-08-01]. (原始内容存档于2021-11-17). 
  12. ^ . ICU User Guide. [2021-11-17]. (原始内容存档于2021-08-23). 

外部链接 编辑

國際統一碼部件, 此條目可参照英語維基百科相應條目来扩充, 2023年1月, 若您熟悉来源语言和主题, 请协助参考外语维基百科扩充条目, 请勿直接提交机械翻译, 也不要翻译不可靠, 低品质内容, 依版权协议, 译文需在编辑摘要注明来源, 或于讨论页顶部标记, href, template, translated, page, html, title, template, translated, page, translated, page, 标签, 英語, international, components, un. 此條目可参照英語維基百科相應條目来扩充 2023年1月 若您熟悉来源语言和主题 请协助参考外语维基百科扩充条目 请勿直接提交机械翻译 也不要翻译不可靠 低品质内容 依版权协议 译文需在编辑摘要注明来源 或于讨论页顶部标记 a href Template Translated page html title Template Translated page Translated page a 标签 國際統一碼部件 英語 International Components for Unicode 縮寫 ICU 中文譯名根據聯盟官方譯名 1 是成熟的C C 和Java库的开源項目的函式庫 用於支援統一碼 软件国际化和软件全球化 ICU 可广泛移植到许多操作系统和环境中 對於不同平台上 以及在 C C 和 Java 软件的应用程序 它可以提供相同的结果 IBM和许多其他公司赞助 支持和使用它 2 ICU 項目也已成為統一碼聯盟技术委员 ICU 提供以下服务 統一碼文本处理 完整字符属性和字符集转换 統一碼正则表达式 完整的統一碼集 字符 单词和行边界 基於语言的定序和搜索 规范化 大小写转换和脚本音译 通過通用當地數據儲存庫 CLDR 提供全面的语言环境数据和资源包架构 多種日历和时区 以及基于规则的日期 时间 数字 货币和消息的格式化和解析 ICU過去曾為阿拉伯語 希伯來語 印度語和泰語提供複雜文字編排服务 但在第 54 版中已弃用 并在第 58 版中完全删除 取而代之的是HarfBuzz 3 ICU 提供比 C 和 C 标准库更广泛的国际化设施 ICU 67 支持Unicode 13 0并处理英國脫歐的問題 ICU 64 支持Unicode 12 0 而 ICU 64 2 增加了对 Unicode 12 1 的支持 即当前日本令和时代的单一新符号 但对它的支持也已向后移植到 ICU 4 8 2 的旧 ICU 版本 ICU 58 支持 Unicode 9 0 是支持旧平台 如Windows XP Windows Vista 的最后一个版本 对AIX Solaris和z OS的支持在更高版本中也可能受到限制 即构建取决于编译器支持 4 自Windows 10版本 1703 起 ICU 已作为标准组件包含在Microsoft Windows中 5 ICU 过去一直使用UTF 16 但只有用於 Java 而 C C 使用 UTF 8 6 包括正确处理 非法 UTF 8 7 目录 1 起源与发展 2 MessageFormat 3 另見 4 参考 5 外部链接起源与发展 编辑1996 年初 Taligent 併入 IBM 後 昇陽電腦决定新的 Java 语言应该更好地支持国际化 由于 Taligent 拥有使用此类技术的经验并且地理位置接近 因此他们的 Text 和 International 小组被要求将国际类作为JDK 1 1 国际化API 貢獻JDK 8 该代码的很大一部分仍然存在于java text和java util包中 Java 的后续版本都添加了进一步的国际化功能 然后 Java 国际化类被移植到 C 和 C 9 称为 ICU4C ICU for C 的库的一部分 ICU 项目还提供了 ICU4J ICU for Java 它添加了标准 Java 库中不存在的功能 ICU4C 和 ICU4J 非常相似 但并不完全相同 例如 ICU4C 包含正则表达式的 API 而 ICU4J 則沒有 随着时间的推移 这两个框架都得到了增强 以支援統一碼和通用當地數據儲存庫的新功能 1999 年 ICU 以开源项目的方式发布 原名称为 IBM Classes for Unicode 后来更名为 International Components For Unicode 10 2016 年 5 月 ICU 项目加入統一碼联盟成為其技術委員 ICU TC 现在库源是以統一碼许可來分发 11 MessageFormat 编辑MessageFormat 是 ICU 中的類別 它是一个格式化系统 允许使用任意数量的参数来控制复数形式 plural selectordinal 或使用更一般的選擇 切換樣式 select 來處理如性的語法 这些语句可以嵌套 12 ICU MessageFormat 是通过将复数和选择系统添加到Java SE中的同名系统而创建的 另見 编辑Gnu GetText Graphite NetRexx ICU 许可证 OpenType Pango Uconv 单字参考 编辑 Unicode Terminology English Traditional Chinese www unicode org 2021 11 17 原始内容存档于2021 10 10 ICU International Components for Unicode site icu project org 2021 11 17 原始内容存档于2021 08 27 Layout Engine ICU User Guide userguide icu project org 2021 11 17 原始内容存档于2021 08 28 Download ICU 64 ICU International Components for Unicode site icu project org 2019 10 20 原始内容存档于2021 07 01 Chen Raymond How can I convert between IANA time zones and Windows registry based time zones The Old New Thing Microsoft 2021 11 17 原始内容存档于2022 04 17 UTF 8 ICU User Guide userguide icu project org 2018 04 03 原始内容存档于2021 04 17 13311 change illegal UTF 8 handling to Unicode best practice bugs icu project org 2018 04 03 原始内容存档于2019 08 04 Laura Werner Getting Java ready for the world A brief history of IBM and Sun s internationalization efforts 1999 2021 11 17 原始内容存档于2021 11 17 ICU User Guide userguide icu project org 2021 11 17 原始内容存档于2021 08 28 ICU Project Management Committee 2021 11 17 原始内容存档于2021 08 28 ICU joins the Unicode Consortium Unicode Inc 2016 05 16 2016 08 01 原始内容存档于2021 11 17 Formatting Messages ICU User Guide 2021 11 17 原始内容存档于2021 08 23 外部链接 编辑官方網站 页面存档备份 存于互联网档案馆 国际統一碼组件音譯服務 页面存档备份 存于互联网档案馆 在线ICU编辑 页面存档备份 存于互联网档案馆 取自 https zh wikipedia org w index php title 國際統一碼部件 amp oldid 75452491, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。