如何知道utf8字符串中的字符数

我想知道是否有一种简单的方法来确定UTF8字符串中的字符数.
例如,在 Windows中,它可以通过以下方式完成:

>将UTF8字符串转换为wchar_t字符串
>使用wcslen函数并获得结果

但我需要更简单和跨平台的解决方案.

提前致谢.

“字符数”的整个概念并不真正适用于Unicode,因为代码不会将1:1映射到字形.如果你想以未压缩的形式建立存储需求,那么@borrible提出的方法很好,但这就是它可以告诉你的全部内容.

例如,存在像“零宽度空间”这样的代码点,其在渲染时不占用屏幕上的空间,而是占用代码点,或者用于变音符号或元音的修饰符.因此,任何统计数据都必须特定于具体应用程序.

正确的Unicode渲染器将具有一个函数,可以告诉您如果该信息是您所追求的,将使用多少像素来渲染字符串.

相关文章
相关标签/搜索