Java实现图片与二进制的互相转换

本文实例为大家分享了Java将图片转二进制再将二进制转成图片,供大家参考,具体内容如下

import java.awt.image.BufferedImage;  
import java.io.ByteArrayInputStream;  
import java.io.ByteArrayOutputStream;  
import java.io.File;  
import java.io.IOException;  
 
import javax.imageio.ImageIO;  
 
import sun.misc.BASE64Decoder;  
import sun.misc.BASE64Encoder;  
 
public class TestImageBinary {  
  static BASE64Encoder encoder = new sun.misc.BASE64Encoder();  
  static BASE64Decoder decoder = new sun.misc.BASE64Decoder();  
    
  public static void main(String[] args) {  
    System.out.println(getImageBinary());  
      
    base64StringToImage(getImageBinary());  
  }  
    
  static String getImageBinary(){  
    File f = new File("c://20090709442.jpg");     
    BufferedImage bi;  
    try {  
      bi = ImageIO.read(f);  
      ByteArrayOutputStream baos = new ByteArrayOutputStream();  
      ImageIO.write(bi, "jpg", baos);  
      byte[] bytes = baos.toByteArray();  
        
      return encoder.encodeBuffer(bytes).trim();  
    } catch (IOException e) {  
      e.printStackTrace();  
    }  
    return null;  
  }  
    
  static void base64StringToImage(String base64String){  
    try {  
      byte[] bytes1 = decoder.decodeBuffer(base64String);  
        
      ByteArrayInputStream bais = new ByteArrayInputStream(bytes1);  
      BufferedImage bi1 =ImageIO.read(bais);  
      File w2 = new File("c://QQ.bmp");//可以是jpg,png,gif格式  
      ImageIO.write(bi1, "jpg", w2);//不管输出什么格式图片,此处不需改动  
    } catch (IOException e) {  
      e.printStackTrace();  
    }  
  }  
 
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。