sun.misc.BASE64Decoder导入异常及处理思路
Java后台保存base64图片数据
使用byte[] bytes = new BASE64Decoder().decodeBuffer(str);需要引入sun.misc.BASE64Decoder,但在eclipse中提示不存在此war包。
查阅后在一篇文章中提到:
“一直以来Base64的加密解密都是使用sun.misc包下的BASE64Encoder及BASE64Decoder的sun.misc.BASE64Encoder/BASE64Decoder类。这人个类是sun公司的内部方法,并没有在java api中公开过,不属于JDK标准库范畴,但在JDK中包含了该类,可以直接使用。但是在eclipse和MyEclipse中直接使用,却找不到该类。”
解决方法如图:右键项目-》属性-》java bulid path-》jre System Library-》access rules-》resolution选择accessible,下面填上** 点击确定即可!
另外网上也有用相应的替代的对象及方法,如使用
org.apache.commons.codec.binary.Base64类等。可以自己去查用!
改使用org.apache.commons.codec.binary.Base64
String base64Code = request.getParameter("base64Code"); Base64 base64 = new Base64(); byte[] bytes = base64.decodeBase64(new String(base64Code).getBytes());
亲测,效果一样!