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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 谢威 中级黑马   /  2013-7-17 15:07  /  1074 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 谢威 于 2013-7-17 18:34 编辑

下面代码是自己写的复制图片代码
可是复制后却没有图片请高手解答,最好提供正确的复制图片代码。
  1. import java.io.*;

  2. class IoTest
  3. {
  4.         public static void main(String[] args)throws Exception
  5.         {

  6.                 FileInputStream fis = new FileInputStream("a.jpg");//创建字节输入流对象
  7.                 FileOutputStream fos = new FileOutputStream("b.jpg");//创建字节输出流对象

  8.                 InputStreamReader isr = new InputStreamReader(fis);//创建输入字节字符转换对象
  9.                 OutputStreamWriter osw = new OutputStreamWriter(fos);//创建输出字节字符转换对象
  10.                 BufferedReader bfr = new BufferedReader(isr);//创建字符读缓冲对象
  11.                 BufferedWriter bfw = new BufferedWriter(osw);//创建字符写缓冲对象

  12.                 String line = null;//接受读取的字符数

  13.                 while((line=bfr.readLine())!=null)
  14.                 {
  15.                         if("over".equals(line))  break;
  16.                         bfw.write(line);//逐行将读取的字符写出
  17.                         bfw.newLine();

  18.                         bfw.flush();
  19.                 }
  20.                 bfr.close();
  21.                 bfw.close();

  22.         }
  23. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
杨兴庭 + 1

查看全部评分

3 个回复

倒序浏览
本帖最后由 陌路行者 于 2013-7-17 17:05 编辑
  1. import java.io.*;
  2. class CopyPic1
  3. {
  4.         public static void main(String[] args) throws IOException
  5.         {
  6.                 FileInputStream fis = new FileInputStream("1.jpg");
  7.                 FileOutputStream fos = new FileOutputStream("2.jpg");
  8.                 byte[] buf = new byte[1024];
  9.                 int len=0;
  10.                 while((len=fis.read(buf))!=-1)
  11.                 {
  12.                         fos.write(buf,0,len);
  13.                 }
  14.                 fis.close();
  15.                 fos.close();
  16.         }
  17. }
复制代码
回复 使用道具 举报
  1. import java.io.*;
  2. class CopyPic1
  3. {
  4.         public static void main(String[] args) throws IOException
  5.         {
  6.                 try
  7.                 {
  8.                         BufferedInputStream bufi =
  9.                                 new BufferedInputStream(new FileInputStream("1.jpg"));
  10.                         BufferedOutputStream bufo =
  11.                                 new BufferedOutputStream(new FileOutputStream("2.jpg"));

  12.                         int len = 0;
  13.                         while((len=bufi.read())!=-1)
  14.                         {
  15.                                 bufo.write(len);
  16.                                 bufo.flush();
  17.                         }
  18.                         bufi.close();
  19.                         bufo.close();
  20.                 }
  21.                 catch (IOException e)
  22.                 {
  23.                         throw new RuntimeException("复制文件失败");
  24.                 }       
  25.         }
  26. }
复制代码
你是不是想要用高效啊

评分

参与人数 1技术分 +1 收起 理由
杨兴庭 + 1

查看全部评分

回复 使用道具 举报 1 0
字节文件虽然可以用转换流转成字符流读写,但这涉及到编码问题,是不能转的,可以用楼上的BufferedInputStream和BufferedOutputStream提高效率
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马