对于Base64.getDecoder().decode
Java代码,我需要等效的C#代码。
我已经在C#中尝试过类似以下的内容
byte[] decodedBytes = Convert.FromBase64String(embedCode);
string decodedText = Encoding.UTF8.GetString(decodedBytes);
byte[] bytes = Encoding.ASCII.GetBytes(decodedText);
但是该字符串具有一些特殊字符,例如0��\ u0002B \0�*-\u0017�c\u001e�aֺ]���qr����`。如何在C#中实现这一目标
答案 0 :(得分:0)
“ \ u0002”是unicode编码的“文本开头”字符。
所以使用
byte[] decodedBytes = Convert.FromBase64String(embedCode);
string decodedText = Encoding.Unicode.GetString(decodedBytes);
并且请勿尝试将Unicode文本编码为ASCII,Unicode的字符范围更大,而ASCII将无法识别。因此,请再次使用unicode编码写入字节。