Illegal base64 character 3a

8 篇文章 0 订阅

这个问题一般都是转译的问题。或者在写decode的时候写成了file.byte[]。

if (file.contains("data:")) {
    int start = file.indexOf(",");
    file = file.substring(start + 1);
}
final Base64.Decoder decoder = Base64.getDecoder();
file = file.replaceAll("\r|\n", "");
file = file.trim();
byte[] bytes = decoder.decode(file);

这样写基本可以解决这个问题

  • 15
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 这个错误提示表示在使用Base64编码或解码时出现了非法字符3a。这可能是因为输入的字符串包含了不支持的字符,或者Base64编码被截断了导致数据不完整。 要解决这个问题,可以检查输入的字符串是否包含除Base64字符集以外的字符,例如特殊符号或空格等。如果有,可以尝试将其移除或替换为Base64字符集中的字符。另外,还可以检查Base64编码的完整性,确保数据没有被截断或损坏。 ### 回答2: Illegal base64 character 3a(非法的base64字符3a)是一个错误提示信息,通常出现在对数据进行base64编码或解码时。Base64是一种将二进制数据编码为可打印字符的编码方案。将数据进行base64编码时,会使用64个可打印字符(包括大写和小写字母、数字以及两个特殊字符)来表示原始数据中的每个6位,并将这些字符连接起来形成一个字符串。在对这个字符串进行解码时,需要使用相应的解码算法,将字符串还原为原始的二进制数据。 然而,如果在base64编码或解码过程中出现了Illegal base64 character 3a的错误提示,一般是因为数据中出现了非法的base64字符3a,也就是冒号(:)字符。冒号在base64编码中没有被包含在这64个可打印字符之中,因此如果将冒号放入进行base64编码的数据中,便会引发Illegal base64 character 3a的错误提示。 解决这个问题的方法通常有两种。一种方法是在进行base64编码之前,先将数据中的冒号字符进行替换或删除。另一种方法是使用的是URL安全的base64编码(URL-safe base64 encoding),这种编码方式将原先的“+”和“/”字符替换成了“-”和“_”字符,从而避免了Illegal base64 character 3a的错误提示。 总之,Illegal base64 character 3a是因为非法的冒号字符出现在进行base64编码或解码的数据中,通过替换或使用URL安全的编码方式,可以有效地解决这个问题。 ### 回答3: Illegal base64 character 3a是指在进行Base64编码时出现非法字符3aBase64是一种将二进制数据转换为可打印ASCII字符的编码方式,常用于电子邮件、URL和HTTP请求等场合,可以有效防止传输过程中出现数据损坏的情况。 在Base64编码中,每三个字节(3×8=24位)一组,分为四组,每组6位,对应一个可打印ASCII字符。当字节数不足三个时,用0补齐。当最后一组不足6位时,用“=”补齐,因此Base64编码后的字符串长度一般为4的倍数。 在字节流中出现了非法字符时,就会出现Illegal base64 character的错误提示。这种情况通常是由于使用了不属于Base64字符集的字符导致的,例如“:”、“/”、“+”、“?”等,这些符号在URL和HTTP请求中具有特殊含义,不能出现在Base64编码字符串中。 解决这个问题的方法是使用Base64编码函数对原始数据进行编码时,先将可能出现非法字符的特殊符号进行转义或删除,再进行Base64编码即可。在进行数据传输或处理时,也需要遵循相关规范,避免使用非法字符。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值