【发布时间】:2013-04-13 16:23:13
【问题描述】:
我要动态显示 Unicode,
例如,我知道"\U00020001" 会显示一个字符。 (下面的变量“standard_format”)。但是,我只能直接显示整个字符串("\U00020001")。
我想知道如何将该字符串显示为字符。
【问题讨论】:
我要动态显示 Unicode,
例如,我知道"\U00020001" 会显示一个字符。 (下面的变量“standard_format”)。但是,我只能直接显示整个字符串("\U00020001")。
我想知道如何将该字符串显示为字符。
【问题讨论】:
如果您写"\U0002B695",整个字符串将被识别为转义序列。但是在"\\U0002B695" 中,只有\\ 会被识别为\ 的转义序列。我不知道如何以这种方式构建字符串文字,然后像编译器那样解析它。
为了获取字符串,您需要将十六进制值转换为 int,然后将其转换为字符串:
string txt_unicodePoint = "2B695";
int value = int.Parse(txt_unicodePoint, System.Globalization.NumberStyles.HexNumber);
string result = char.ConvertFromUtf32(value).ToString();
【讨论】:
我相信你想要的是 Char.Parse(string s) http://msdn.microsoft.com/en-us/library/system.char.parse.aspx 你会把你的转义序列 "\U000..." 字符串传递给它
【讨论】: