java复制文件的4种方式

  

  1. 使用文件流复制   

  

  这是最经典的方式将一个文件的内容复制到另一个文件中。   使用FileInputStream读取文件一个的字节,使用FileOutputStream写入到文件B。   

  

  这是第一个方法的代码:   

  

  私有静态孔隙copyFileUsingFileStreams(文件来源,文件dest)   

  

  抛出IOException {   

  

  InputStream输入=零;   

  

  OutputStream输出=零;   

  

  尝试{   

  

  输入=new FileInputStream(源);   

  

  输出=new FileOutputStream(桌子);   

  

  byte [] buf=新字节[1024];   

  

  int bytesRead;   

  

  而((bytesRead=input.read (buf))比;0) {   

  

  输出。写(buf 0 bytesRead);   

  

  }   

  

  最后}{   

  

  input.close ();   

  

  output.close ();   

  

  }   

  

  }   

  

  正如你所看到的我们执行几个读和写操作试的数据,所以这应该是一个低效率的,下一个方法我们将看到新的方式。   

  

  2. 使用FileChannel复制   

  

  Java NIO包括transferFrom方法,根据文档应该比文件流复制的速度更快。   

  

  这是第二种方法的代码:   

  

  私有静态孔隙copyFileUsingFileChannels(文件来源,文件dest)   抛出IOException {   

  

  FileChannel inputChannel=零;   

  

  FileChannel outputChannel=零;   

  

  尝试{   

  

  inputChannel=new FileInputStream(源).getChannel ();   

  

  outputChannel=new FileOutputStream(桌子).getChannel ();   

  

  outputChannel。transferFrom (inputChannel 0 inputChannel.size ());   

  

  最后}{   

  

  inputChannel.close ();   

  

  outputChannel.close ();   

  

  }   

  

  }   

  

     

  <中心>    java复制文件的4种方式”>
  </中心>
  <p>
  <br/>
  </p>
  <p>
  3.使用共用IO复制
  </p>
  <p>
  Apache Commons IO提供拷贝文件方法在其FileUtils类,可用于复制一个文件到另一个地方。它非常方便使用Apache Commons
  FileUtils类时,您已经使用您的项目。
  </p>
  <p>
  基本上,这个类使用Java NIO FileChannel内部。
  </p>
  <p>
  这是第三种方法的代码:
  </p>
  <p>
  私有静态孔隙copyFileUsingApacheCommonsIO(文件源文件
  桌子)
  </p>
  <p>
  抛出IOException {
  </p>
  <p>
  FileUtils。拷贝文件(来源、桌子);
  </p>
  <p>
  }
  </p>
  <p>
  4. 使用Java7的文件类复制
  </p>
  <p>
  如果你有一些经验在Java 7中你可能会知道,可以使用复制方法的文件类文件,从一个文件复制到另一个文件。
  </p>
  <p>
  这是第四个方法的代码:
  </p>
  <p>
  私有静态孔隙copyFileUsingJava7Files(文件来源,文件dest)
  </p>
  <p>
  抛出IOException {
  </p>
  <p>
  dest.toPath Files.copy (source.toPath () ());
  </p>
  <p>
  }
  </p>
  <p>
  详情更多了解:http://shenzhen.offcn.com/</p><h2 class=java复制文件的4种方式