黑马程序员技术交流社区

标题: 今天测试题的一些问题 [打印本页]

作者: 尤泽红    时间: 2012-8-26 19:53
标题: 今天测试题的一些问题


编写程序拷贝一个文件, 尽量使用效率高的方式.  
作者: 黑马杨晨    时间: 2012-8-26 20:00
视频上有答案,关键是学会能灵活运用!
作者: 廉伟    时间: 2012-8-26 20:21
package com.itheima;
/**
*第6题的题目:    编写程序拷贝一个文件, 尽量使用效率高的方式.
*
*  @author 廉伟
*/


//解题过程:


        import java.io.FileInputStream;
        import java.io.FileOutputStream;
        import java.io.IOException;


        public class Test6
                {

                public static void main(String[] args) throws IOException {

                        String src = null;
                        String desc = null;
                        try{
                                src = args[0];
                                desc = args[1];
                        }
                        catch(ArrayIndexOutOfBoundsException noFileExp)
                                {
                                System.out.println("请输入要拷贝的文件名字");
                                return;
                                }
                       
                        FileInputStream srcFile = new FileInputStream(src);
                        FileOutputStream descFile = new FileOutputStream(desc);
                       
                        byte[] ary = null;
                        int byteRead = -1;
                        do
                        {ary = new byte[1024];
                               
                                byteRead = srcFile.read(ary);
                               
                                descFile.write(ary);
                                descFile.flush();
                        }
                        while (byteRead != -1);
                        {
                                srcFile.close();
                                descFile.close();
                        }
               
        }

        }
       
       


作者: 廉伟    时间: 2012-8-26 20:21
以上是我的解题过程,希望可以帮到你,
作者: 黑马-李勇    时间: 2012-8-26 23:28
视频里面有,不会可以写个自己的思路上来,有什么地方不懂,或做不出来,可以问具体的。但直接把问题发出来是不是有点......感觉跟本没想过{:soso_e127:}
拷贝文件 有两种,一种是用字节流拷贝文件 ,一种是字符流拷贝文件 。题目 没有写是字节文件 还是字符文件。毕老师的基础视频里面两种拷贝方式都有,建议先去看了视频再回来做这题。还有效率高的方式,对于文本文件当然是缓冲区加字符流加一次读一行拷贝;对于字节流文件 只能是缓冲区加字节流拷贝。个人理解,可能不对,仅供参考。
作者: 郑枫    时间: 2012-8-27 14:55
{:soso_e103:} 毕老师 无敌。
作者: 王金科    时间: 2012-8-27 17:19
老毕的课程里有
作者: 追梦黑马    时间: 2012-8-28 10:34
  1. import java.io.FileInputStream;
  2. import java.io.FileOutputStream;
  3. import java.io.IOException;

  4. public class CopyFile {

  5.         /**
  6.          * @param args
  7.          * @throws IOException
  8.          */
  9.         private static final int BUFFER_SIZE = 1024;
  10.         public static void main(String[] args) throws IOException {
  11.                 // TODO Auto-generated method stub
  12.                         FileCopy();
  13.         }

  14.         public static void FileCopy() throws IOException {
  15.                 // TODO Auto-generated method stub
  16.                
  17.                        
  18.                         FileInputStream fis = new FileInputStream("e:\\Waiting For Copy.jpg");               
  19.                         FileOutputStream fos = new FileOutputStream("e:\\Copy File.jpg");
  20.                        
  21.                         byte[] buf = new byte[BUFFER_SIZE];
  22.                        
  23.                         int len = 0;
  24.                        
  25.                         while((len=fis.read(buf))!=-1){
  26.                                 fos.write(buf,0,len);
  27.                         }
  28.                        
  29.                         fos.close();
  30.                         fis.close();
  31.                
  32.         }

  33. }
复制代码





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