java实现图片与byte相互转换

来源:互联网 发布:淘宝客商品采集网站 编辑:程序博客网 时间:2024/05/16 10:50

这是1.jpg文件
这是图片文件,文件名称为1.jpg.
java代码:

import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;public class TestImage {     public static void main(String[] args) throws Exception        {            //先模拟一个图形byte[]            byte[] b1 =image2Bytes("d:\\1.jpg");            //存为文件            buff2Image(b1,"d:\\test.jpg");            System.out.println("Hello World!");        }     static void buff2Image(byte[] b,String tagSrc) throws Exception        {            FileOutputStream fout = new FileOutputStream(tagSrc);            //将字节写入文件            fout.write(b);            fout.close();        }     static byte[] image2Bytes(String imgSrc) throws Exception        {            FileInputStream fin = new FileInputStream(new File(imgSrc));            //可能溢出,简单起见就不考虑太多,如果太大就要另外想办法,比如一次传入固定长度byte[]            byte[] bytes  = new byte[fin.available()];            //将文件内容写入字节数组,提供测试的case            fin.read(bytes);            fin.close();            return bytes;}}

备注:如果要实现上传图片,将图片转成byte字节后,对字节数组进行Base64编码处理 ,就会变成Base64编码过的字节数组字符串 ,这样就可以通过 HttpURLConnection post 上传图片了,接收图片的时候,Base64解码 ,就恢复编码前的字节了,在转成图片就好了!

0 0
原创粉丝点击