【发布时间】:2013-04-06 00:55:36
【问题描述】:
有没有使用char*处理utf8的c库?
特别是对于所有char*,我们会使用utf8兼容函数来处理:
计算长度、比较、查找和替换、连接、toupper tolow 等
无需处理转换。
【问题讨论】:
有没有使用char*处理utf8的c库?
特别是对于所有char*,我们会使用utf8兼容函数来处理:
计算长度、比较、查找和替换、连接、toupper tolow 等
无需处理转换。
【问题讨论】:
...那么ICU library 正是您所需要的。
【讨论】:
另一个库是libiconv。
我对 libiconv 的体验很有限,但这种体验并不痛苦;我可以推荐它。
该库专注于在编码之间进行转换,包括 UTF8。虽然我不完全确定“不需要处理转换”是什么意思,但我怀疑你正在寻找一个可以读取编码的 unicode 的库,然后对其进行操作。如果确实如此,libiconv 不是你要找的,我赞同 ICU 的建议。
【讨论】:
iconv 是 POSIX 系统标准库的一部分;您所指的libiconv 仅用于缺少此标准功能的旧系统。它也没有真正满足 OP 直接使用 UTF-8 字符串的目标;用于将它们转换为其他编码。