网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

Java如何实现图片的复制

这篇文章主要介绍“Java如何实现图片的复制”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Java如何实现图片的复制”文章能帮助大家解决问题。

成都创新互联公司专注于企业营销型网站建设、网站重做改版、商南网站定制设计、自适应品牌网站建设、H5开发商城网站开发、集团公司官网建设、外贸营销网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为商南等各大城市提供网站开发制作服务。

public class TestBytesInputStream {public static void main(String[] args) {
        //复制a.jpg图片byte[] datas=fileToBytesArray("D:\\a.jpg");byteArrayToFile(datas,"D:\\b.jpg");



    }//1.图片读取到字节数组中//  1.图片到程序——FileInputStream//  2.程序到字节数组——byteArrayOutputStream    public static byte[] fileToBytesArray(String path) {//创建源头与目的地        File src = new File(path);byte[] dest = null;//选择流        InputStream is = null;ByteArrayOutputStream baos = null;try {
             //也可以使用  is = new BufferedInputStream(FileInputStream(src));
            is = new FileInputStream(src);
            //也可以使用baos = new BufferedOutputStream(teArrayOutputStream());
            baos = new ByteArrayOutputStream();//3.分段读取            byte[] flush = new byte[1024 * 10];//缓冲容器            int len = -1;while ((len = is.read(flush)) != -1) {
                baos.write(flush, 0, len);//写到字节数组中            }
            baos.flush();return baos.toByteArray();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {try {if (null != is) {
                    is.close();
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }return null;
    }public static void byteArrayToFile(byte[]src,String path){File dest=new File(path);InputStream is=null;OutputStream os=null;try {
            is = new ByteArrayInputStream(src);
            os = new FileOutputStream(dest);byte[] flush = new byte[5];int len = -1;while ((len = is.read(flush)) != -1) {
                os.write(flush, 0, len);
            }

        }catch (IOException e) {
            e.printStackTrace();
        } finally {try{if(os!=null){
                    os.close();
                }
            }catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}

值得提醒的是,当is.read()没有传入参数的时候,复制的图片会无法打开,因为它只能一个字节一个字节地读,所以最好还是传入数组

提高性能的两个地方(1.缓冲容器的使用(相当于小卡车)    2.还可以使用字节缓冲流(相当于大卡车))

关于“Java如何实现图片的复制”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注创新互联行业资讯频道,小编每天都会为大家更新不同的知识点。


当前标题:Java如何实现图片的复制
路径分享:http://bjjierui.cn/article/jejcoe.html

其他资讯