当前位置:  开发笔记 > 编程语言 > 正文

C语言中I18N的资源

如何解决《C语言中I18N的资源》经验,为你挑选了1个好方法。

我正在玩c ++中的语言环境和I18N,并一直在寻找真实世界的例子.我在他的书(2012年4月发布的C++ 11第2版)中阅读了Josusis关于I18N的章节,并发现它很有用,但没有真实世界的例子可以借鉴我不知道我是不是以下最佳实践是犯下初学者错误.StackOverflow可以用什么资源指向我在网络和印刷中用C++做I18N的东西?

还有什么库可用于C++,使i18n更容易?标准库中不需要的是什么?乍一看,似乎标准库中不存在UTF8支持.

编辑:

在做了一些阅读之后,似乎C和C++都是Unicode"不可知".对于处理以Unicode/UTF8/16/32编码的数据,似乎还需要使用第三方库.问题的关键在于标准库本身只考虑ISO 8859和相关的字符页面,这些页面根据您的语言环境设置而变化.这意味着我可能想要将ICU库用于字符串而不是使用std::string甚至是std::wstring.



1> Jonathan Lef..:

您已经指向GNU gettext,它允许您在运行时用本地化版本替换文字字符串 - 本地化的一个方面(这是在您完成国际化之后,当某人实际使用您的国际化代码时发生的事情环境).你也被指向了Boost(特别是Boost.Locale)库; 对于与C++相关的任何事情,这通常是一个很好的答案.

您可能会看到另一个地方是ICU(Unicode的国际组件)项目.作为数据源,您可以将CLDR(公共区域设置数据存储库)视为有关不同区域设置的信息来源; Unicode网站也有很多关于不同文化的其他方面的信息,因为它涉及许多语言.

作为现在的最终资源,一个相当专业的资源,有Olson时区数据库,每年更新多次,以跟踪不同国家改变他们关于何时在冬季和夏季之间变化的规则的方式(夏令时)时间.

推荐阅读
ar_wen2402851455
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有