模拟dto发送的二进制图片:用java 操作 二进制与图片 转换
package com.wxm.util;import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;import org.apache.commons.codec.binary.Base64;/*** 将图片转换为Base64
* 将base64编码字符串解码成img图片* @创建时间 2019-01-05 10:43:12**/
public class Img2Base64Util {public static void main(String[] args) {String imgFile = "E:\\logo2.jpg";//待处理的图片String imgbese=getImgStr(imgFile);System.out.println("=====二进制长度====="+imgbese.length());System.out.println(imgbese);String imgFilePath = "E:\\332.jpg";//新生成的图片generateImage(imgbese,imgFilePath);}/*** 将图片转换成Base64编码* @param imgFile 待处理图片* @return*/public static String getImgStr(String imgFile){//将图片文件转化为字节数组字符串,并对其进行Base64编码处理InputStream in = null;byte[] data = null;//读取图片字节数组try {in = new FileInputStream(imgFile); data = new byte[in.available()];in.read(data);in.close();} catch (IOException e){e.printStackTrace();}return new String(Base64.encodeBase64(data));}/*** 对字节数组字符串进行Base64解码并生成图片* @param imgStr 图片数据* @param imgFilePath 保存图片全路径地址* @return*/public static boolean generateImage(String imgStr,String imgFilePath){if (imgStr == null) { //图像数据为空return false;}try{//Base64解码byte[] b = Base64.decodeBase64(imgStr);for(int i=0;i}