通常, 只需交换字母 以用于url中,这样就不必进行%编码;只有65个字符的3是有问题-
+,
/和
=。最常见的替换是
-到位的
+,并
_代替
/。至于填充: 只需将其删除 (
=)即可;您可以 推断
出所需的填充量。在另一端:只需逆转该过程即可:
string returnValue = System.Convert.Tobase64String(toEnpreAsBytes) .TrimEnd(padding).Replace('+', '-').Replace('/', '_');与:
static readonly char[] padding = { '=' };并反转:
string incoming = returnValue .Replace('_', '/').Replace('-', '+');switch(returnValue.Length % 4) { case 2: incoming += "=="; break; case 3: incoming += "="; break;}byte[] bytes = Convert.Frombase64String(incoming);string originalText = Encoding.ASCII.GetString(bytes);但是,有趣的问题是: 这是否与“通用编解码器库”使用的方法相同? 测试当然是一件很合理的事情-这是一种非常普遍的方法。



