java实现图片与base64字符串之间的转换

来源:互联网 发布:淘宝上的whoo是真的吗 编辑:程序博客网 时间:2024/04/30 08:33
package cn.com;    import java.io.FileInputStream;  import java.io.FileOutputStream;  import java.io.IOException;  import java.io.InputStream;  import java.io.OutputStream;    import sun.misc.BASE64Decoder;  import sun.misc.BASE64Encoder;    public class Base64Test   {      public static void main(String[] args)      {          String strImg = GetImageStr();          System.out.println(strImg);          GenerateImage(strImg);      }      //图片转化成base64字符串       public static String GetImageStr()      {//将图片文件转化为字节数组字符串,并对其进行Base64编码处理           String imgFile = "d://test.jpg";//待处理的图片          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();          }          //对字节数组Base64编码           BASE64Encoder encoder = new BASE64Encoder();          return encoder.encode(data);//返回Base64编码过的字节数组字符串       }            //base64字符串转化成图片       public static boolean GenerateImage(String imgStr)      {   //对字节数组字符串进行Base64解码并生成图片           if (imgStr == null) //图像数据为空               return false;          BASE64Decoder decoder = new BASE64Decoder();          try           {              //Base64解码               byte[] b = decoder.decodeBuffer(imgStr);              for(int i=0;i<b.length;++i)              {                  if(b[i]<0)                  {//调整异常数据                       b[i]+=256;                  }              }              //生成jpeg图片               String imgFilePath = "d://222.jpg";//新生成的图片              OutputStream out = new FileOutputStream(imgFilePath);                  out.write(b);              out.flush();              out.close();              return true;          }           catch (Exception e)           {              return false;          }      }  }  


 

0 0
原创粉丝点击