m0_60328342 2021-09-12 13:42 采纳率: 60%
浏览 57
已结题

Java怎么将一个文件夹下的txt文本文档复制到另一个文件夹

public class test2 {
    public static void main(String[] args) throws IOException {
        File sourcePath = new File("D:\\01");
        File outputPath = new File("D:\\02");

        handlePath(sourcePath, outputPath);
    }
    private static void handlePath(File sourcePath, File outputPath) throws IOException {
        for (File file : sourcePath.listFiles()) { //2.取得源目录下所有的文件或文件夹,并进行遍历
            if (file.isDirectory()) {
//3.如果当前遍历的是文件夹,则使用递归调用,继续处理该文件夹下面的所有文件或文件夹
                handlePath(file, outputPath);
            } else {
//4.如果当前遍历的是不是文件夹而是文件,那么直接开始copy的操作
//4.1.取得文件的文件名,包含文件后缀名
                String fileName = file.getName();
                if (fileName.contains(".txt")) {
//4.2.1.如果该文件有后缀名,即包含“.”点符号,则取得文件的后缀名为:最后一个点符号后面的字符串
                    String suffix = fileName.substring(fileName.lastIndexOf('.') + 1);
//4.2.2.根据文件最后的输出的目标目录和文件的后缀名,执行copy的操作(因为最后输出格式为按文件的后缀名分类,即最后输出如:pdf目录下面有pdf文件,txt目录下面有txt文件)
                    copy(file, new File(outputPath, suffix));
                }
            }
        }
    }


    private static void copy(File sourcePath, File outputPath) throws IOException {
        Files.copy(sourcePath.toPath(), outputPath.toPath());
    }
}



```请问要怎么改我现在的代码,现在只能复制出没有后缀的文档,也没有txt的文档名。
![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/917732524136162.png "=600 #left")
  • 写回答

1条回答 默认 最新

  • CSDN专家-sinJack 2021-09-12 13:48
    关注

    你复制后,是不是没带上文件名后缀txt

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 9月14日
  • 已采纳回答 9月12日
  • 创建了问题 9月12日

悬赏问题

  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥170 如图所示配置eNSP
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改
  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上