黑马程序员技术交流社区

标题: 求帮忙改代码。有关io中图片复制问题 [打印本页]

作者: pthuakai    时间: 2013-5-7 09:43
标题: 求帮忙改代码。有关io中图片复制问题
本帖最后由 pthuakai 于 2013-5-8 09:15 编辑

package day19;
import java.io.*;
public class copypictureTest {
public static void main(String[] args) {
  FileInputStream fis=null;
  FileOutputStream fos=null;
  try{
   fis=new FileInputStream("1.jpeg");
   fos=new FileOutputStream("copypicture.jpeg");
   byte[] buf=new byte[1024];
   int len=0;
   while((len=fis.read(buf))!=-1)
   {
    fos.write(buf,0,len);
   }
  }catch(IOException e)
  {
   throw new RuntimeException("复制文件失败");
  }finally{
   try{
    if(fis!=null)
    fis.close();
    }catch(IOException e)
    {
     throw new RuntimeException("fis fail");
    }
   try{
    if(fos!=null)
    fos.close();
    }catch(IOException e)
    {
     throw new RuntimeException("fos fail");
    }
  }
}
}
为什么老是提示   throw new RuntimeException("复制文件失败");这行出错?是不是必须是bmp格式图片才行?

作者: 郑雪    时间: 2013-5-7 09:54
楼主的代码,我运行了一下,只是我将其中的源和目的路径改变了,运行结果是没有问题的,复制的图片也很成功。
我将路径改为跟楼主的一模一样的,运行结果是楼主所说的 throw new RuntimeException("复制文件失败")。
所以,我建议楼主将源文件的绝对路径补充完整,楼主代码中的源文件是相对路径,而在当前目录下没有这个文件,所以应该是有找不到源文件引起的复制文件失败。
作者: xuluheng718    时间: 2013-5-7 10:33
如楼上说的,代码没错,可能是路径错了,还有就是字节流是可以复制任何二进制文件的
作者: 孙金鑫    时间: 2013-5-7 17:17
测试过了,代码没错,你存放1.jpeg文件的路径应该有问题,该一下就好了
作者: pthuakai    时间: 2013-5-8 09:15
谢谢高手指点




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