下载ICU 62
发布概述
版本号
常见更改
Unicode 11码 :684个新字符,包括7个新脚本、Mtavruli格鲁吉亚大写字母、5个新汉字和66个新表情符号。
Unicode 11脚本元数据、排序、中文音译。 修复工具错误后,中文排序笔画顺序从Unicode 7更新为Unicode 11。
数字格式化 NumberFormatter现在可以从 本地中立骨架字符串 (类似于DateFormat)( #8610 ). 这在不应翻译占位符详细信息的翻译消息中特别有用。 如果样式字段的前缀为“::”,MessageFormat会将其识别为数字骨架,如“文件数:{num,number,:round-integer group-min2}”( #13742 ) 新的“转换”函数用于从DecimalFormat获取NumberFormatter,从NumberFormatter获取Format。 新C API( unicode/unumberformatter。 小时 . ( #13597 )目前,它仅支持通过框架字符串进行格式设置。 修改或重命名了几个still-draft NumberFormatter方法和helper类; 至少有一个版本暂时保留以前的版本(已弃用),以帮助进行转换。
Break Iterator规则:正确的Break迭代器操作不再需要“安全”规则。 为了向后兼容,包含安全规则的现有规则集将继续工作,其中包含的安全规则将被忽略。 已更新Break Iterator二进制数据格式以反映此更改。 换行符:边界规则已更新,以反映Unicode 11版本的 UAX#14型 具体来说,对表情符号ZWJ序列的处理得到了改进。 ( #13770 )
ICU4C特定变更
对数字解析进行彻底的检查。 请参阅 设计文件 变更摘要; 行为基本上与以前的版本兼容,但存在一些已知的差异。
DecimalFormat现在包装了新的NumberFormatter代码。
ICU4J特定变化
(无)
已知问题
常见问题
重症监护病房4C
ICU4C需要C++11支持。 某些平台(如IBM AIX、IBM z和Solaris)可能无法再构建ICU,除非有改进的编译器可用。 请参阅下面的“ICU4C平台支持”部分。
DecimalFormat&CurrencyUnit不仅用于接受“无货币”的NULL字符串,还用于接受空字符串(作为未记录的功能)。 门票 #13850 使其再次接受空的货币代码字符串。 在(某些?)ARM平台上,数字格式化代码与未对齐的内存访问发生崩溃。 请参见 #20001 有关详细信息和建议的修复。
重症监护病房4J
何时 时区。 时区_JDK 设置为时区类型,则欧洲/都柏林的时区格式在最新的Oracle和OpenJDK运行时上不正确(“爱尔兰标准时间”和“格林威治标准时间”被替换)( #13798个 ).
迁移问题
在某些货币符号和数字之间插入空白的修复可能需要修改“黄金数据”测试 #6560 这个 Unicode 11.0码 更改可能还需要修复一些代码/测试。 值得注意的是: 分词现在将空白分组在一起。 一般来说,分段简化了表情符号序列的测试。 Georgia的套管行为不同,与其他脚本的套管行为也不同。
ICU4C平台支持
全部:构建ICU库需要对C++11的编译器支持。 GCC:版本4.8和更高版本已经过测试。 IBM AIX: xlC C/C++当前不支持足够的C++11子集(# 13393 ) gcc可能有效
macOS:XCode 8.3(LLVM clang 8.1.0)已经过测试。 Solaris公司 窗户: 支持的最低版本是Windows 7。 不再支持Windows XP和Windows Vista。 生成Visual Studio UWP项目需要 Visual Studio 2017 使用的版本 Windows 10软件开发工具包 安装。 使用ICC编译器的Windows:
IBM z公司 xlC C/C++当前不支持C++11的足够子集(# 13393 )
ICU更新62.2
新日本时代Reiwa(和)支持 IANA tzdata2019a公司