Java 将图片转二进制再将二进制转成图片

Wesley13
• 阅读 668
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();   
        }   
    }   
  
}
点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Wesley13 Wesley13
2年前
java将svg图片转换为png格式图片
java将svg图片转换为png格式图片博客分类:java 有时候在客户端使用svg画图,而在服务器端需要同样的图片,在服务器端重新画一遍是非常费事的。这时候我们就可以利用已有的svg直接通过下面的类转换成png格式。使用这个方法需要引用batic相关的包,mavenpom文件如下:<!svg生成png格式图片<
Wesley13 Wesley13
2年前
java 二进制(原码 反码 补码),位运算,移位运算,约瑟夫问题
一.二进制,位运算,移位运算1.二进制对于原码,反码,补码而言,需要注意以下几点:(1).Java中没有无符号数,换言之,Java中的数都是有符号的;(2).二进制的最高位是符号位,0表示正数,1表示负数;(3).正数的原码,反码,补码都一样;(4).负数的反码它的原码符号位不变,其他位取反;(5).
Wesley13 Wesley13
2年前
javamail
packagecom.syj;importjava.io.ByteArrayInputStream;importjava.io.ByteArrayOutputStream;importjava.io.FileInputStream;importjava.io.IOException;
Wesley13 Wesley13
2年前
java文件转二进制
本工具类提供三个方法:1.文件转为二进制数组2.文件转为二进制字符串3.二进制字符串还原为文件可当做工具类直接使用。packagecom.yscredit.sz.util;importorg.springframework.util.FileCopyUtils;
Wesley13 Wesley13
2年前
JAVA_将二进制流转换成图片文件
_1. __\代码\_将二进制流转换成图片文件晚风工作室www.soservers.com    _跳至\1\(http://www.oschina.net/code/snippet_931591_1760429253)\全屏预览\(http://www.oschina.net/code/piece_full?code17
Wesley13 Wesley13
2年前
Java批量解析微信dat文件,微信图片破解
以下是java代码,创建一个WxChatImgRevert.class后复制进去就好啦。此处的jdk版本需要1.8以上…,另外两个参数需要改成自己的哦~此处的原理是判断图片文件的十六进制特征码。packagemain.java.com.example.demo;importjava.io.\;importjava.util.
Wesley13 Wesley13
2年前
JAVA中使用openoffice将Excel转PDF再转图片功能实现
需求公司一个小项目要结尾了,有非常多的表格,而且非常复杂,例如!在这里插入图片描述(https://oscimg.oschina.net/oscnet/d6763b83bffd7055a6007d1fcc917e9a2e4.png)例如:(这表格,有想死的心…)!在这里插入图片描述(https://oscimg
Wesley13 Wesley13
2年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Wesley13 Wesley13
2年前
unity将 -u4E00 这种 编码 转汉字 方法
 unity中直接使用 JsonMapper.ToJson(对象),取到的字符串,里面汉字可能是\\u4E00类似这种其实也不用转,服务器会通过类似fastjson发序列化的方式,将json转对象,获取对象的值就是中文但是有时服务器要求将传参中字符串中类似\\u4E00这种转汉字,就需要下面 publ