zoukankan      html  css  js  c++  java
  • Java 将图片转二进制再将二进制转成图片

    转载:http://www.cnblogs.com/gengaixue/p/5035908.html

    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();
    }
    }

    }

  • 相关阅读:
    嵌入式操作系统-小型任务调度的理解(转)
    数据分析-pandas基础入门(一)
    硬件电路设计——低通滤波器的应用
    Docker
    AWK总结
    DNS解析
    TCP/IP
    Mysql优化部分总结
    Nginx配置文件释义备查
    时间模块
  • 原文地址:https://www.cnblogs.com/zxf330301/p/8709873.html
Copyright © 2011-2022 走看看