DATA URL解释 Data URL是在本地直接绘制图片,不是从服务器加载,所以节省了HTTP连接,起到加速网页的作用。
data:image/jpg; 声明数据协议及类型名称
base64, 编码形式为base64
/9j/4AAQSkZ…… base64编码结果
转换dataURL方法 public static File base64ToFile(String base64FileStr, String fileType) throws Exception { base64FileStr = base64FileStr.replace("\r\n", ""); // 在用户temp目录下创建临时文件 File file = File.createTempFile(UUID.randomUUID().toString(), fileType); BufferedOutputStream bos = null; FileOutputStream fos = null; try { // 用Base64进行解码后获取的字节数组可以直接转换为文件 byte[] bytes = Base64.getDecoder().decode(base64FileStr); fos = new FileOutputStream(file); bos = new BufferedOutputStream(fos); bos.write(bytes); } finally { if (bos != null) { try { bos.close(); } catch (IOException e) { e.printStackTrace(); } } if (fos != null) { try { fos.close(); } catch (IOException e) { e.printStackTrace(); } } } return file; } 在这里插入代码片
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 测试转换DataURL方法 public static void main(String[] args) throws Exception { String imageStr = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALcAAAC3CAYAAABQbs+fAAAAAXNSR0IArs4c6QAAEmZJREFUeF7t3dFyGzsOBND4/z86W3dHdVeqEUanDVKRN8hjCkOCjUajOZatr1+/fv3+tfjf79//W/Lr6+vf1av/l+3TZ+/jZf0qpso/jV+1zqqz3K+TYnV/liofqZfEtM475L6GbxUpV63TKvad0Ay5v4nkKPcBnOCQToBvluS/ 1