• 技术文章 >Java >java教程

    详细介绍Java实现文件或文件夹的复制到指定目录的实例

    黄舟黄舟2017-03-30 10:16:10原创1432
    本篇文章主要介绍了Java实现文件或文件夹的复制到指定目录实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。

    整理文档,搜刮出一个Java实现文件或文件夹的复制到指定目录的代码,稍微整理精简一下做下分享。

    import java.io.File; 
    import java.io.FileInputStream; 
    import java.io.FileOutputStream; 
     
    public class Test { 
      private static int a = 5; 
     
      public static void main(String[] args) { 
        //需要复制的目标文件或目标文件夹 
        String pathname = "C:/Users/likun/Desktop/git_project"; 
        File file = new File(pathname); 
        //复制到的位置 
        String topathname = "C:/Users/likun/Desktop/movie"; 
        File toFile = new File(topathname); 
        try { 
          copy(file, toFile); 
        } catch (Exception e) { 
          // TODO Auto-generated catch block 
          e.printStackTrace(); 
        } 
      } 
     
      public static void copy(File file, File toFile) throws Exception { 
        byte[] b = new byte[1024]; 
        int a; 
        FileInputStream fis; 
        FileOutputStream fos; 
        if (file.isDirectory()) { 
          String filepath = file.getAbsolutePath(); 
          filepath=filepath.replaceAll("\\\\", "/"); 
          String toFilepath = toFile.getAbsolutePath(); 
          toFilepath=toFilepath.replaceAll("\\\\", "/"); 
          int lastIndexOf = filepath.lastIndexOf("/"); 
          toFilepath = toFilepath + filepath.substring(lastIndexOf ,filepath.length()); 
          File copy=new File(toFilepath); 
          //复制文件夹 
          if (!copy.exists()) { 
            copy.mkdir(); 
          } 
          //遍历文件夹 
          for (File f : file.listFiles()) { 
            copy(f, copy); 
          } 
        } else { 
          if (toFile.isDirectory()) { 
            String filepath = file.getAbsolutePath(); 
            filepath=filepath.replaceAll("\\\\", "/"); 
            String toFilepath = toFile.getAbsolutePath(); 
            toFilepath=toFilepath.replaceAll("\\\\", "/"); 
            int lastIndexOf = filepath.lastIndexOf("/"); 
            toFilepath = toFilepath + filepath.substring(lastIndexOf ,filepath.length()); 
             
            //写文件 
            File newFile = new File(toFilepath); 
            fis = new FileInputStream(file); 
            fos = new FileOutputStream(newFile); 
            while ((a = fis.read(b)) != -1) { 
              fos.write(b, 0, a); 
            } 
          } else { 
            //写文件 
            fis = new FileInputStream(file); 
            fos = new FileOutputStream(toFile); 
            while ((a = fis.read(b)) != -1) { 
              fos.write(b, 0, a); 
            } 
          } 
     
        } 
      } 
     
    }

    以上就是详细介绍Java实现文件或文件夹的复制到指定目录的实例的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:Java,文件,复制
    上一篇:Java与WebUploader相结合实现文件上传功能代码详解 下一篇:详解Java递归算法(动力节点整理)
    20期PHP线上班

    相关文章推荐

    精选22门好课,价值3725元,开通VIP免费学习!• SpringCloud Tencent 全套解决方案一• 详细介绍Java虚拟机:JVM垃圾回收器• JAVA接口与抽象类详细解析• Java知识归纳之JVM详解• 实例详解Java实现简易版的图书管理系统
    1/1

    PHP中文网