我正在尝试从 base-64 字符串来回编码一些字符串,但我很难获得正确的结果。
string text = base64string.... //Here I have a base-64 string.
byte[] encodedByte = System.Text.ASCIIEncoding.ASCII.GetBytes(text);
string base64Encoded = Convert.ToBase64String(encodedByte);
if (text == base64Encoded) //If the new encoded string is equal to its original value
return base64Encoded;
我已经尝试过我的方法来做到这一点,但我似乎没有得到正确的结果。我已经尝试过 System.Text.Encoding.Unicode
和 System.Text.Encoding.UTF8
可能是什么问题?有没有人有合适的解决方案?
最佳答案
string text = base64string.... //Here I have a base-64 string.
byte[] encodedByte = System.Text.ASCIIEncoding.ASCII.GetBytes(text);
string base64Encoded = Convert.ToBase64String(encodedByte);
您正在对字符串进行双重编码。您从 base64 字符串开始,获取字节,然后再次对其进行编码。如果要进行比较,则需要从原始字符串开始。
关于c# - 将字符串编码为 base-64 或从 base-64 编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9878449/