我目前正在围绕“Convert.FromBase64String”函数运行。它首先抛出了字符串错误的错误,所以我使用以下代码修复了错误...
private static byte[] DecodeFrom64(string encodedData)
{
System.Text.ASCIIEncoding decoder = new ASCIIEncoding();
string returnValue = string.Empty;
byte[] encodedDataAsBytes = null;
int mod4 = encodedData.Length % 4;
try
{
if (mod4 > 0)
{
encodedData = encodedData.Trim('\0');
encodedData += new string('=', 4 - mod4);
}
encodedDataAsBytes = System.Convert.FromBase64String(encodedData);
returnValue = decoder.GetString(encodedDataAsBytes);
}
catch (Exception ex)
{
throw ex;
}
return encodedDataAsBytes;
}
现在它抛出错误“s的格式无效.s包含一个非base-64字符,两个以上的填充字符,或填充字符中的非白色空格字符。”显然它在末尾添加了另一个填充字符,使字符串正确长度(乘以4)。
不确定如何解决这个问题?
有什么想法吗?