C#将带有空值的字节数组转换为字符串

kou*_*des 2 c# string encode

所有,

我有一个关于将带有空值的字节数组转换为C#字符串的问题.这是我想要转换为字符串的字节数组的示例.我希望得到一个值为SHKV的字符串

[0]: 83
[1]: 0
[2]: 72
[3]: 0
[4]: 75
[5]: 0
[6]: 86
[7]: 0
Run Code Online (Sandbox Code Playgroud)

我怎么能在C#中做到这一点?

谢谢,MK

Luk*_*keH 6

您确实需要知道原始编码才能成功转换它.

我怀疑在这种情况下编码可能是UTF-16,你可以转换如下:

byte[] yourByteArray = new byte[] { 83, 0, 72, 0, 75, 0, 86, 0 };

string yourString = Encoding.Unicode.GetString(yourByteArray));

Console.WriteLine(yourString);    // SHKV
Run Code Online (Sandbox Code Playgroud)