C# 将字节数组字符串转换回字符串

C# 将字节数组字符串转换回字符串,c#,arrays,string,unicode,bytearray,C#,Arrays,String,Unicode,Bytearray,我在将字节数组字符串转换回文本时遇到问题。我正在从转换为字节数组的xml文件中读取字符串(Encoding.Unicode.GetBytes(string))。我没有开发xml导出。现在我想把值转换回字符串 例如(请注意,它是一个实字符串) “AQwAtADQAMQA5AAwADEAfQAAA==”返回“这是一个字符串!” 我知道编码使用了encoding.Unicode.GetBytes(string)。我的第一个想法是,读取两个值,计算字节值并将它们转换回unicode字符串。有没有更好的解

我在将字节数组字符串转换回文本时遇到问题。我正在从转换为字节数组的xml文件中读取字符串(
Encoding.Unicode.GetBytes(string)
)。我没有开发xml导出。现在我想把值转换回字符串

例如(请注意,它是一个实字符串)

“AQwAtADQAMQA5AAwADEAfQAAA==”返回“这是一个字符串!”


我知道编码使用了
encoding.Unicode.GetBytes(string)
。我的第一个想法是,读取两个值,计算字节值并将它们转换回unicode字符串。有没有更好的解决办法?谢谢。

如果数据是用base64编码的,就把这个扔出去

byte[] binaryData;
try {
      binaryData = 
         System.Convert.FromBase64String(base64String);
}
catch (System.ArgumentNullException) {
      //handling error
}

string myString = Encoding.Unicode.GetString(binaryData);
试试看

阅读更多:

我注意到“==”填充。有没有可能是base64编码相关的?我也注意到了。我已经检查过了,你能建议我用同样的方法吗。但这是行不通的。我明天再检查一下。谢谢。我已经试过了,但遗憾的是结果不是原始输入。只是另一个快速的想法。也许是utf8或utf32而不是unicode?我犯了一个很大的错误。。。我使用了
Encoding.UTF8.GetString
而不是
Encoding.Unicode.GetString
。谢谢