也许我不需要 32 位字符串,但我需要表示 32 位字符
http://www.fileformat.info/info/unicode/char/1f4a9/index.htm 现在我捕获了符号字体,当我粘贴它时(在 url 或任何文本区域)可以看到字符,所以我知道我有它的字体支持。
但我如何在我的 C#/.NET 应用程序中支持它?
-edit- 我会添加一些东西。当我在我的 .NET winform 应用程序中粘贴上述字符时,我没有正确看到该字符。将其粘贴到 Firefox 时,我确实看到了它。如何在我的 winform 应用程序中正确查看字符?
最佳答案
我不确定我是否理解你的问题:
-
.NET 中的
String
是 UTF-16 编码的,对此您无能为力。如果你想获得一个字符串的 UTF-32 版本,你必须将它转换成一个字节数组与 UTF32Encoding类。-
Char
.NET 中的角色因此是 16 位长,对此您也无能为力。 UTF-32 编码的字符只能由字节数组(有 4 个项目)表示。您可以使用 UTF32Encoding为此上课。 - 每个 UTF-32 字符都有一个等效的 UTF-16 表示,反之亦然。因此,在这种情况下,我们只能谈论字符及其不同的表示形式(编码),UTF-16 是 .NET 平台上的首选表示形式。
关于c# - 我如何在 C# 中使用 32 位 unicode 字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6801397/