黑马程序员技术交流社区

标题: io流对图片进行读取再保存至本地? [打印本页]

作者: ↙五线谱╲    时间: 2013-11-7 00:39
标题: io流对图片进行读取再保存至本地?
        public static void main(String[] args) throws Exception{
                // TODO Auto-generated method stub
                File file=new File("D:\\我的文档\\图片收藏\\北航\\DSC_0008.JPG");
                FileInputStream fis=new FileInputStream(file);
                FileOutputStream fos=new FileOutputStream("C:\\Users\\Administrator\\Desktop\\a.jpg");
                int len=0;
                byte[] bs=new byte[1024*2];
                while((len=fis.read())!=-1){
                        fos.write(bs,0,len);
                }
                fis.close();
                fos.close();
        }
程序能顺利运行,就是保存到桌面后图片空白!!!
作者: 李慧声    时间: 2013-11-7 01:22
本帖最后由 李慧声 于 2013-11-7 09:55 编辑

       byte[] bs=new byte[1024*2];
                while((len=fis.read())!=-1){
                        fos.write(bs,0,len);
                }
你bs数组中啥都没有,你就去写到本地去了,得到的图片可不就一片空白嘛~~
要把对到的数据,撞到缓冲区中区,或者你不用缓冲区直接去写就是喽。
两种解决方法
一:
   while((len=fis.read(bs))!=-1){
                        fos.write(bs,0,len);
                }
二:
  while((len=fis.read())!=-1){
                       fos.write(len);
                }
凭个人爱好选一种,OK,
楼主侧漏自己是北航的了~~~
作者: hel    时间: 2013-11-7 03:56
fis.read() 中需要将bs传进去;
fis.read(bs)
作者: 王松松    时间: 2013-11-7 08:44
楼主对IO流的理解不是很透啊,不然不会出现这样的错误了。
作者: 黄炳期    时间: 2013-11-7 08:57
帖子已分类~
作者: ↙五线谱╲    时间: 2013-11-7 15:34
王松松 发表于 2013-11-7 08:44
楼主对IO流的理解不是很透啊,不然不会出现这样的错误了。

我不会告诉你我是菜鸟
作者: ↙五线谱╲    时间: 2013-11-7 15:34
王松松 发表于 2013-11-7 08:44
楼主对IO流的理解不是很透啊,不然不会出现这样的错误了。

我不会告诉你我是菜鸟
作者: ↙五线谱╲    时间: 2013-11-7 15:38
李慧声 发表于 2013-11-7 01:22
byte[] bs=new byte[1024*2];
                while((len=fis.read())!=-1){
                    ...

谢谢,疏忽了
作者: ↙五线谱╲    时间: 2013-11-7 18:00
李慧声 发表于 2013-11-7 01:22
byte[] bs=new byte[1024*2];
                while((len=fis.read())!=-1){
                    ...

:lol 眼神很犀利啊!不过我可没说就是
作者: 李慧声    时间: 2013-11-7 18:11
↙五线谱╲ 发表于 2013-11-7 18:00
眼神很犀利啊!不过我可没说就是

呵呵 一种猜测,应该是北航的,默认就是的喽~~~




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2