java怎么复制文件夹,JAVA复制文件

  java怎么复制文件夹,JAVA复制文件

  写爬虫互联网协议(互联网协议)被封了怎么解决?立即使用

  爪哇岛中复制文件的方法:(推荐:java视频教程)

  一、使用FileStreams复制

  这是最经典的方式将一个文件的内容复制到另一个文件中。使用文件输入流读取文件A的字节,使用文件输出流写入到文件乙。这是第一个方法的代码:

  私有静态void copyFileUsingFileStreams(文件源,文件目标)

  引发IOException {

  输入流输入=空

  输出流输出=空

  尝试{

  input=新文件输入流(源);

  output=新文件输出流(dest);

  字节[]缓冲区=新字节[1024];

  int字节读取

  while((字节读取=输入。念(buf))!=-1) {

  output.write(buf,0,字节读取);

  }

  }最后{

  输入。close();

  输出。close();

  }

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

  二、使用FileChannel复制

  Java NIO包括转移自方法,根据文档应该比文件流复制的速度更快。这是第二种方法的代码:

  私有静态void copyFileUsingFileChannels(文件源,文件目标)引发IOException {

  文件通道输入通道=空

  文件通道输出通道=空

  尝试{

  输入通道=新文件输入流(源)。获取通道();

  输出通道=新文件输出流(目标)。获取通道();

  输出通道。转自(输入通道,0,输入通道。size());

  }最后{

  输入通道。close();

  输出通道。close();

  }

  }三、使用Commons IO复制

  Apache Commons IO提供拷贝文件方法在其FileUtils类,可用于复制一个文件到另一个地方。它非常方便使用Apache Commons FileUtils类时,您已经使用您的项目。基本上,这个类使用Java NIO文件通道内部。这是第三种方法的代码:

  私有静态使用apachecommonsio(文件源,文件目标)

  引发IOException {

  FileUtils.copyFile(source,dest);

  }该方法的核心代码如下:

  私有静态void doCopyFile(文件srcFile、文件destFile、布尔preserveFileDate)引发IOException {

  if(目标文件。exists()目标文件。是目录()){

  引发新的io异常(目标 destFile )存在,但它是一个目录);

  }

  FileInputStream fis=null

  FileOutputStream fos=null

  读写文件输入=空

  读写文件输出=空

  尝试{

  fis=新文件inputstream(src文件);

  fos=新文件输出流(dest文件);

  输入=fis。获取通道();

  输出=fos。获取通道();

  长尺寸=输入。size();

  长pos=0;

  长计数=0;

  while (pos size) {

  count=SIZE-pos FILE _ COPY _ BUFFER _ SIZE?文件_副本_缓冲区_大小:大小-位置;

  pos=output.transferFrom(input,pos,count);

  }

  }最后{

  IOUtils.closeQuietly(输出);

  欠条。安静地关闭(fos);

  IOUtils.closeQuietly(输入);

  欠条。安静地关闭(fis);

  }

  if (srcFile.length()!=destFile.length()) {

  引发新的IOException(无法从复制全部内容

  srcFile " "到""目标文件" ");

  }

  if (preserveFileDate) {

  destfile。setlastmedified(src文件。lastmedified());

  }

  }由此可见,使用Apache Commons IO复制文件的原理就是上述第二种方法:使用读写文件复制

  四、使用Java7的Files类复制

  如果你有一些经验在Java 7中你可能会知道,可以使用复制方法的文件类文件,从一个文件复制到另一个文件。这是第四个方法的代码:

  私有静态void copyFileUsingJava7Files(文件源,文件目标)

  引发IOException {

  Files.copy(source.toPath()、dest . topath());

  }更多java知识请关注java基础教程部分。java就是这么拷贝文件的。更多详情请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • windows下cmd中切换路径与目录查看,cmd怎么切换路径到文件夹
  • windows下cmd中切换路径与目录查看,cmd怎么切换路径到文件夹,cmd命令打开及切换目录路径的实现
  • wget下载文件到指定目录,wget下载整个文件夹
  • wget下载文件到指定目录,wget下载整个文件夹,wget下载整个网站(整个子目录)或特定目录
  • u盘exe病毒如何根除,如何根除U盘文件夹exe病毒
  • u盘exe病毒如何根除,如何根除U盘文件夹exe病毒,U.EXE病毒删除方法
  • svn在eclipse中的使用,eclipse不显示svn路径,Eclipse设置svn忽略文件或文件夹(svn-ignore)的操作
  • Linux系统删除文件夹命令,linux系统中删除文件的命令
  • Linux系统删除文件夹命令,linux系统中删除文件的命令,Linux系统删除文件夹和文件的命令
  • jsp 上传文件夹,jsp多文件上传
  • jsp 上传文件夹,jsp多文件上传,JSP组件commons-fileupload实现文件上传
  • dos 删除文件夹命令,dos 删除文件夹 目录不是空的
  • dos 删除文件夹命令,dos 删除文件夹 目录不是空的,dos 删除文件夹 rd
  • Win10共享文件夹怎么设置访问密码,win10共享文件夹设置密码后没有权限访问
  • win10用户的文件名怎么改,window10怎样更改用户文件夹名称
  • 留言与评论(共有 条评论)
       
    验证码: