我在以下代码中收到java.lang.IllegalArgumentException: bad base-64":
I'm getting a "java.lang.IllegalArgumentException: bad base-64" on the following code:
byte[] msgBytes = Base64.decode(msgStr, Base64.NO_WRAP);
msgString 是一个字符串,就在这一行之前,我检查了 msgStr 的值,它是fl-ILw==".有什么问题吗?
msgString is a String, and right before this line, I check the value of msgStr and it is "fl-ILw==". Is there anything wrong?
谢谢.
根据 RFC 4648(http://www.rfc-editor.org/rfc/rfc4648.txt) '-' 字符不是有效的 Base64 字符,但另一方面对URL 和文件名安全的 Base 64 字母"有效.
According to RFC 4648(http://www.rfc-editor.org/rfc/rfc4648.txt) '-' character is not a valid Base64 character but on the other hand is valid for "URL and Filename safe Base 64 Alphabet".
因此您可以根据字符串的预期格式使用 Base64.URL_SAFE.
So you could use Base64.URL_SAFE depending of the expected format of the string.
这篇关于错误的 base-64 错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!