Apache 的 Base64.encodeBase64 和 Android 的 Base64.encode 与 Base64.Default 标志之间有什么区别吗?
示例 A(使用 org.apache.commons.codec.binary.Base64):
Sample A (using org.apache.commons.codec.binary.Base64):
Base64.encodeBase64("foobar".getBytes());
示例 B(使用 android.util.Base64):
Sample B (using android.util.Base64):
Base64.encode("foobar".getBytes(), Base64.DEFAULT);
这些是否产生相同的字符串?
Do these produce the same string?
推荐答案
不,不同的是,在默认设置下,Android 的 Base64 包含行终止符.要获得与 Apache 编码相同的结果,请使用 Base64.NO_WRAP.
No, the difference is that with the default settings, Android's Base64 includes line terminators. To obtain the same result as with the Apache encoding, use Base64.NO_WRAP.
相关文章