Bad base-64 error(错误的 base-64 错误)

本文介绍了错误的 base-64 错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在以下代码中收到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 错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!