我正在使用 Base64 编码来编码 Java 中的用户 ID 字段。
String abc = new String(Base64.encodeBase64("Actualuseridfield"));
我想知道上面的字符串 abc 是否包含字符 " , : ?
当在 abc 中返回 Base64 编码的字符串时,它是否会包含以下字符?
" <double quote>
, <comma>
: <colon>
您不会在Base64编码的字符串中看到任何逗号、冒号或双引号。您将看到等号,因为它们用于填充结尾内容。
如果您有适合 Base64 的编码器,您将看不到特殊字符,除了:
[AZ][az][0-9][+/] 和末尾的填充字符 '=' 表示零填充字节的数量
还有另一个可用的 Base64 字符集将 [+/] 替换为 [_-] 使编码 URL 安全。
然而,规范允许包含任何其他字符。通常,Base64 编码数据每 76 个字符包含一个换行符“\n”。除上述字符外的任何字符都必须在解码期间删除。填充字符表示附加到 n*4 输出字符的零字节数。
转换“奇怪”和不可打印的字符是 base64 的重点,所以不,你不会看到那些。更多信息在这里http://email.about.com/cs/standards/a/base64_encoding.htm