我使用Base64加密来加密Java中的用户ID字段。
String abc = new String(Base64.encodeBase64("Actualuseridfield"));
我想知道上面的字符串abc是否包含字符" ,:或不?
当在abc中返回Base64加密字符串时,它是否会包含以下字符?
" <double quote>
, <comma>
: <colon>
任何一个人都能解释一下吗?
答案 0 :(得分:27)
您不会在Base64编码的字符串中看到任何逗号,冒号或双引号。你会看到等号,因为它们用于填充结尾内容。
答案 1 :(得分:17)
如果你有一个适合Base64的编码器,你将看不到特殊字符,除了:
[A-Z] [a-z] [0-9] [+ /]和末尾的填充字符'='表示零填充字节数
然而,规范允许包含任何其他字符。 Base64编码数据通常包含每76个字符的换行符'\ n'。除了上述字符之外的任何字符都必须在解码期间被删除。填充字符表示附加的零字节数,以应用于n * 4个输出字符。
答案 2 :(得分:4)