个人技术分享

1. 今天在做字节数组转换Base64的时候遇到一个问题,转换成的Base64字符串自动换行,导致传输失败

关键代码:

ByteArrayOutputStream out = new ByteArrayOutputStream();

.............

BASE64Encoder encoder = new BASE64Encoder();

String base64 = encoder.encode(out.toByteArray);

此种转换方法自动带换行符,有几率导致传输失败,为JDK 自带方法,据说要弃用了

2. 更换方法

......

方法1:

String base64 = Base64.getEncoder().encodeToString(out.toByteArray);

方法2:

String base64 = Base64Utils.encodeToString(out.toByteArray());