我试图检查用户名是否是base64字符串。它一直抛出一个非法的异常错误消息,即使字符串是base64编码的。我在这里错过了什么?
public bool checkBase64String(string value) //value = “TWrXfr4gGTE%3d”
{
try
{
byte[] vArray = Convert.FromBase64String(value);
return true;
}
catch (FormatException ex)
{
ex.ToString();
}
return false;
}输入不是有效的基- 64字符串,因为它包含一个非基本的64个字符、两个以上的填充字符或填充字符中的一个非法字符。
发布于 2014-02-13 00:57:40
输入是URL编码的,尾随的=变成了%3d。它需要在转换之前被解码为TWrXfr4gGTE= .
小提琴..。http://dotnetfiddle.net/S8UpdJ
https://stackoverflow.com/questions/21743089
复制相似问题