java 实现 图片文件 与 byte 数组互相转换

来源:互联网 发布:asp与php哪个好 编辑:程序博客网 时间:2024/06/04 08:16
package webgate;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;//图片文件,与 byte[] 互转public class TestFile {static byte[] bytes;public static void main(String[] args) throws Exception {File img = new File("W:\\img\\04.jpg");fileToByte(img);ByteToFile(bytes);}public static void fileToByte(File img) throws Exception {ByteArrayOutputStream baos = new ByteArrayOutputStream();try {BufferedImage bi;bi = ImageIO.read(img);ImageIO.write(bi, "jpg", baos);bytes = baos.toByteArray();System.err.println(bytes.length);} catch (Exception e) {e.printStackTrace();} finally {baos.close();}}static void ByteToFile(byte[] bytes)throws Exception{ ByteArrayInputStream bais = new ByteArrayInputStream(bytes);           BufferedImage bi1 =ImageIO.read(bais);         try {               File w2 = new File("W:\\img\\00000000003.jpg");//可以是jpg,png,gif格式               ImageIO.write(bi1, "jpg", w2);//不管输出什么格式图片,此处不需改动           } catch (IOException e) {               e.printStackTrace();           }finally{        bais.close();        }    }  }
如果是在 springmvc 中,上传文件 并转数组,就很简单了。

如果在springmvc 中,上传文件,再转数组就很简单了。

只需要设置 接收的文件类型为 MultipartFile , 然后 用 file.getBytes()  就可以了。。。





原创粉丝点击