C# 字符串分析方法无法正常工作
我正试图解析一个包含十六进制的字符串。我需要将它分为两部分,并将每个部分转换为一个字符。第一部分工作正常,但第二部分返回数字而不是字符C# 字符串分析方法无法正常工作,c#,parsing,int,hex,C#,Parsing,Int,Hex,我正试图解析一个包含十六进制的字符串。我需要将它分为两部分,并将每个部分转换为一个字符。第一部分工作正常,但第二部分返回数字而不是字符 string chr = "E583"; string result = ""; for (int u = 0; u < chr.Length; u += 2) result += (char)int.Parse( chr.Substring(u, 2), System.Globalization.NumberStyles
string chr = "E583";
string result = "";
for (int u = 0; u < chr.Length; u += 2)
result += (char)int.Parse(
chr.Substring(u, 2),
System.Globalization.NumberStyles.HexNumber);
string chr=“E583”;
字符串结果=”;
对于(int u=0;u
此函数返回
“å\u0083”
。第一个字符翻译正确,第二个字符保持十六进制。为什么?有没有更好的编码方法?谢谢!:) 谢谢,我更正了它。嗯,\u0083
代码是不可见的字符“此处无中断”这就是为什么它在Debugger中这样表示,但从技术上讲,字符应该显示为ƒ,但它不是。它不是'f'
只要看一看:((int)('f')。ToString(“x2”)
是0x66
,not0x83
这是原始字符串:“僔,然后我将其转换为十六进制字符串“E583”,稍后我需要使用上述代码将其转换回“僔,但我得到的是“å\u0083”。