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
,not
0x83
这是原始字符串:“僔,然后我将其转换为十六进制字符串“E583”,稍后我需要使用上述代码将其转换回“僔,但我得到的是“å\u0083”。