首页 > 其他分享 >警告: BASE64Decoder是内部专用 API, 可能会在未来发行版中删

警告: BASE64Decoder是内部专用 API, 可能会在未来发行版中删

时间:2023-06-25 12:13:41浏览次数:41  
标签:java String Base64 BASE64Decoder encoder API 发行版 decoder

开发过程中遇到这个问题,虽然不影响项目运行,打包发布,但还是要把警告扼杀在摇篮中。
sun.misc包都是sun公司的内部类,并没有在java api中公开过,不建议使用,所以使用这些方法是不安全的,将来随时可能会从中去除,所以相应的应该使用替代的对象及方法。

针对警告: BASE64Decoder是内部专用 API, 可能会在未来发行版中删除解决办法
采用org.apache.commons.codec.binary.Base64替换

原方法
 
BASE64Encoder encoder = new BASE64Encoder();
 
//String imagestr new String(base64en.encode(str.getBytes("GBK"))).replace("\n","").replace("\r","");
 
String imagestr =  encoder.encode(captcha);
 
BASE64Decoder decoder = new BASE64Decoder();
 
byte[] bytes = decoder.decodeBuffer(imagestr);
 
现方法
 
import java.util.Base64.Encoder
import java.util.Base64.Decoder
 
Encoder encoder = Base64.getEncoder();
String result = encoder.encodeToString(byteArray);
 
Decoder decoder = Base64.getDecoder();
byte[] result = decoder.decode(str);

 

标签:java,String,Base64,BASE64Decoder,encoder,API,发行版,decoder
From: https://www.cnblogs.com/okeyl/p/17502585.html

相关文章