有关c的从语言到语言的iconv音译的简单示例吗?

时间:2010-12-01 23:21:31

标签: c text internationalization iconv

假设我们有简单的场景,一种语言的字符串,比如法语。

我们希望将法语以音译形式转换为ASCII。

如何以最简单的方式在C中完成?

还有一种完全不同的方式,与iconv无关,理想情况是多平台吗?

1 个答案:

答案 0 :(得分:3)

如果您想要多平台,iconv不是正确的工具。音译是GNU特定的扩展。通常,音译是一个难题,GNU iconv实现仅适用于琐碎的案例。非ASCII字符如何被音译不是字符的属性,而是文本语言及其使用方式。例如,“日”应该变成“ri”或“ni”还是其他什么?或者如果你想坚持使用基于拉丁语的语言,“ö”应该变成“o”还是“oe”?扩展到其他非拉丁语脚本,音译大多数印度语是相当简单的,但音译泰语需要对字符进行一些重新排序,并且音译需要解析整个音节并识别哪些字母在根/前缀/后缀/等中。作用。

在我看来,“我如何音译为ASCII?”的最佳答案。对于大多数软件程序是:。而是修复任何错误或故意以英语为中心的策略,使您首先想要ASCII。真正应该进行音译的唯一软件是高度语言意识的软件,便于搜索或解释不是用户自己母语的文本。