sun.misc.BASE64Decoder导入异常及处理思路

本文介绍了在Java中处理Base64编码图片的方法,包括如何解决eclipse环境中使用sun.misc包下BASE64Encoder和BASE64Decoder类时遇到的问题,并提供了一种使用org.apache.commons.codec.binary.Base64类的替代方案。

Java后台保存base64图片数据

使用byte[] bytes = new BASE64Decoder().decodeBuffer(str);需要引入sun.misc.BASE64Decoder,但在eclipse中提示如下警告:

 

 

查阅后在一篇文章中提到:

“一直以来Base64的加密解密都是使用sun.misc包下的BASE64Encoder及BASE64Decoder的sun.misc.BASE64Encoder/BASE64Decoder类。这人个类是sun公司的内部方法,并没有在java api中公开过,不属于JDK标准库范畴,但在JDK中包含了该类,可以直接使用。但是在eclipse和MyEclipse中直接使用,却找不到该类。”

详细解释可以参照:http://blog.sina.com.cn/s/blog_5a6efa330102v8st.html

 

 

一直以来Base64的加密解密都是使用sun.misc包下的BASE64Encoder及BASE64Decoder的sun.misc.BASE64Encoder/BASE64Decoder类。这人个类是sun公司的内部方法,并没有在java api中公开过,不属于JDK标准库范畴,但在JDK中包含了该类,可以直接使用。但是在eclipse和MyEclipse中直接使用,却找不到该类。如下图!

BASE64Encoder及BASE64Decoder的正确用法

解决方法如图:右键项目-》属性-》构建路经

BASE64Encoder及BASE64Decoder的正确用法

右键项目-》属性-》Java bulid path-》jre System Library-》access rules-》resolution选择accessible,下面填上** 点击确定即可!!!

 

 

BASE64Encoder及BASE64Decoder的正确用法

 

BASE64Encoder及BASE64Decoder的正确用法

这是英文版界面

BASE64Encoder及BASE64Decoder的正确用法

另外网上也有用相应的替代的对象及方法,如使用

org.apache.commons.codec.binary.Base64类等。可以自己去查用!

 

以上内容均参考自:http://blog.sina.com.cn/s/blog_5a6efa330102v8st.html

 

 

改使用org.apache.commons.codec.binary.Base64

 

String base64Code = request.getParameter("base64Code");
Base64 base64 = new Base64();
byte[] bytes = base64.decodeBase64(new String(base64Code).getBytes());

 

亲测,效果一样!!!

 

转载于:https://www.cnblogs.com/mr-wuxiansheng/p/6956786.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值