如何使用 C# 处理长度不正确的 Base64 字符串

How do I handle improper length Base64 strings with c#

我知道 Base64 编码文件的长度必须是 4 的倍数。为了更正这一点,我可以使用下面的代码。

        int mod4 = s.Length % 4;
        if (mod4 > 0)
        {
            s += new string('=', 4 - mod4);
        }

这将添加尽可能多的“=”,使其成为 4 的倍数的长度。但我遇到了这样一种情况,即“=”符号可能会在不应该出现的情况下出现.我想我可以删除任何填充“=”,然后在需要时将它们添加回去,但这看起来很愚蠢。有没有更好的方法来处理混乱的 Base64 编码?

我猜,你正在寻找

s.TrimEnd('=');