前言
1. ICU 官方网站http://icu-project.org/
2. ICU 版本下载地址http://site.icu-project.org/download,进入后下载ICU4C版本。
3. ICU于5月25号发布Release版本4.8,后期更新版本建议只更新Release版本。
4. ICU 用户指南http://userguide.icu-project.org/
5. 对于我们的中间件来讲,目前使用到的ICU功能仅为字符编码转换,所以我们的工程中只需包含ICU工程的common工程和stubdata工程。编译出可执行文件为icuuc48.dll和icudt48.dll(linux中为libicuuc48.dll.a和libicudata48.dll.a)
6. 对于ICU来讲有两种方式连接数据文件(多语言文件),一种是直接把资源文件编译到icudt48.dll或libicudata48.dll.a文件中,这样的文件编译出来会比较大,目前4.8版本中的资源文件为17M,另一种方法是挑选需要的资源文件编译成.dat文件(如icudt48l.dat),.dat文件可以跨平台使用,然后通过icudt48.dll或libicudata48.dll.a连接到.dat文件的方式来使用资源文件。
7. ICU网站可以生成用户自定义的.dat文件,这样我们只需要生成我们需要的字符编码资源就可以大大削减.dat文件的大小。自定义资源文件网站为
http://apps,icu-project.org/datacustom/
8. 如在ICU代码中添加注释,则应使用‘/*do something*/’的形式,因为‘//’格式注释在编程其他工程时可能产生异常情况。
9. 更多内容请看工程下的readme.html。
另:上述所有资源暂时只能通过使用网络代理的方式获得(简单的讲就是需翻墙)
编译和配置ICU方案:
在VS下编译
1. ICU所有工程项目均在一个工程中包含,即<解压目录>/ source/allinone中的allinone.sln
2. 由于网达平台软件基本上均为UTF-8的编码方式,建议直接修改编码宏,这样可以提高ICU的执行效率。
· #ifndef U_CHARSET_IS_UTF8
· -# define U_CHARSET_IS_UTF8 0
· +# define U_CHARSET_IS_UTF8 1
· #endif
3. 为支持网达平台,在代码中增加U_WDFORM