String decode = new String(Base64.getDecoder().decode(str),"utf-8");

String s = new String(Base64.getDecoder().decode(sb.toString().replace("\r\n", "")),"utf-8");

java.lang.IllegalArgumentException: Illegal base64 character d
at java.util.Base64$Decoder.decode0(Unknown Source)

原因: java自带Base64工具需要把Base64中的换行去掉才能正常使用。

我的Base64文本:

PCFET0NUWVBFIGh0bWw+PGh0bWw+CTxoZWFkPgkJPG1ldGEgY2hhcnNldD0iVVRG
LTgiPgkJPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmlj
ZS13aWR0aCxpbml0aWFsLXNjYWxlPTEsbWluaW11bS1zY2FsZT0xLG1heGltdW0t
c2NhbGU9MSx1c2VyLXNjYWxhYmxlPW5vIiAvPgkJPHRpdGxlPjwvdGl0bGU+CQk8
c3R5bGUgdHlwZT0idGV4dC9jc3MiPgkJCWJvZHksCQkJaDEsCQkJaDIsCQkJaDMs
CQkJaDQsCQkJaDUsCQkJaDYs……

这段文本中有多个换行,需要去掉换行,把"\r\n"换成""。

String decode = new String(Base64.getDecoder().decode(str),"utf-8");

直接上代码:报错的代码:String decode = new String(Base64.getDecoder().decode(str),"utf-8");应改为:String s = new String(Base64.getDecoder().decode(sb.toString().replace("\r\n", "")),"utf-8"); 报错:java.... java .lang. Illegal ArgumentException: Illegal base64 character 3f at java . util . Base64 $Decoder.decode0( Base64 . java :714) at java . util . Base64 $Decoder.decode( Base64 . java :526) 原因是因为编码encode和解密de... 在实现了将文件通过 Base64 的方式加密存储到数据库中并且读取到相应的文件时,在通过 Base64 的解密方法进行解密时,出现了不应该出现的错误,将 解决 问题 的过程在这里进行记录和总结 提示:以下是本篇文章正文内容,下面案例可供参考 一、 问题 描述 在这里进行解密时报了说d是 Base64 的非法字符的 问题 ,但是在之前测试加密和解密时都没有报出这样的 问题 ,因此在想出现 问题 的原因一定不是因为d是非法字符 二、 解决 方法 解决 方法相对简单,只是将调用Base
base64 解码为文件方式不止一种,下面两种,如果一种 报错 ,换另外一种试一下: byte[] bytes = Base64 Util s.decodeFromString( base64 Str); byte[] bytes1 = new BASE64 Decoder().decodeBuffer( base64 Str); 先将 base64 字符串转为byte...
使用 Java 8的 java . util . Base64 进行解码的时候,不定时报 java .lang. Illegal ArgumentException: Illegal base64 character 错误 百度查了许多方案: 1.因为有换行符,需要把换行符替换掉,参考例子: String decode = new String( Base64 .getDecoder().decode(str),“utf-8”); String s = new String( Base64 .getDecoder().decod
这是因为在Anylogic函数体中无法直接使用导入语句。您可以在函数体中使用完整的类名来代替导入语句,例如: java . util .HashMap<Object, Object> map = new java . util .HashMap<Object, Object>(); 这样就能在Anylogic函数体中成功使用HashMap类了。