A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© pthuakai 中级黑马   /  2013-5-7 09:43  /  1934 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 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格式图片才行?

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

4 个回复

倒序浏览
楼主的代码,我运行了一下,只是我将其中的源和目的路径改变了,运行结果是没有问题的,复制的图片也很成功。
我将路径改为跟楼主的一模一样的,运行结果是楼主所说的 throw new RuntimeException("复制文件失败")。
所以,我建议楼主将源文件的绝对路径补充完整,楼主代码中的源文件是相对路径,而在当前目录下没有这个文件,所以应该是有找不到源文件引起的复制文件失败。

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

回复 使用道具 举报
如楼上说的,代码没错,可能是路径错了,还有就是字节流是可以复制任何二进制文件的
回复 使用道具 举报
测试过了,代码没错,你存放1.jpeg文件的路径应该有问题,该一下就好了
回复 使用道具 举报
谢谢高手指点
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马