zoukankan      html  css  js  c++  java
  • java 中 image 和 byte[] 相互转换

     

     
    java 中 image 和 byte[] 相互转换可恶的…………其实也挺好的 
    只是把好不容易写出来的东西记下来,怕忘了…… 
    下面,我来介绍一个简单的 byte[] to image, 
    我们只需要一个存储了图片信息的二进制串(byte[]) 
    然后,这样: 
    InputStream buffin = new ByteArrayInputStream(/*二进制串*/, 
                                                  /*起始位置*/, 
                                                  /*二进制串长度*/)); 

    BufferedImage img = ImageIO.read(buffin); 
    这样,我们就得到了一个可以输出的BufferedImage了,是不是非常简单呢~ 
    接下来,我们再来写一段代码,写法,也很简单 
    首先,我们要准备好一个可以输出的Image对象, 
    然后,这样 


    ByteArrayOutputStream bos = new ByteArrayOutputStream(); 
    ImageIO.write((RenderedImage)/*要输出的图片*/,/* 图片的格式*/,bos);(要用try和chatch 


    然后用bos.toByteArray();(ByteArrayOutputStream.toByteArray)就可以得到想要byte[]了~ 
    是不是非常简单呢~~ 
    ,我这么做只是想把上传过来 
    的图片修改一下,生成一张规定大小的新图片然后一起存入数据库
    好不容易用Toolkit类生成了一个什么什么图片,是说是java.awt.image.TookitImage对象


    摘自http://blog.csdn.net/comcow/archive/2008/10/08/3031252.aspx 

    再加一句 
    Image img=Toolkit.getDefaultToolkit().createImage(buf, 0,buf.length); 

    InputStream转换byte[]   
      public   byte[]   toBArray(   InputStream   is   )   
      {   
              ByteArrayOutputStream   outp   =   new   ByteArrayOutputStream();   
              int   ch   =   0;   
              while(   (ch=is.read())!=-1   )   
                    outp.write(ch);   
              byte[]   b   =   outp.toByteArray();   
              return   b;   
    }   
  • 相关阅读:
    索引的实现:B+树
    SQL Server 查
    SQL Server 增、删、改、小部分查
    最最最最最基础的SQL Server
    三大范式
    SQLserver数据类型
    第一阶段项目
    2017.10.17一阶段项目心得
    jquery&bootstrap
    国庆小长假结束后的一阶段小测验
  • 原文地址:https://www.cnblogs.com/ouyangping/p/6511693.html
Copyright © 2011-2022 走看看