(文件操作)操作案例:批量修改文件名称

操作案例:批量修改文件名称

编写程序,程序运行时输入目录名称,并把该目录名所有文件包括子目录里面的文件后缀修改为.txt。

对于这类的操作必须设置一些假设的约定,能够重命名的文件都是有后缀的,如果没有后缀的路径则为其追加路径,如果有后缀的路径则必须以最后一个“.”进行截取。

 

实现类:

 public static void renameDir(File file){
        if(file.isDirectory()){     //是一个目录
            File[] results = file.listFiles();  //列出子目录的内容
            if(results != null){
                for (int x = 0;x<results.length;x++){
                    renameDir(results[x]);  //递归调用
                }
            }
        }else{
            if(file.isFile()){  //如果是文件就必须要重命名
                String fileName = null;
                if(file.getName().contains(".")){ //判断文件名是否有“.”
                    //把file的文件名字从索引0开始找到最后一个“.”,在将他们截取,保存的是除去后缀的文件名
                    fileName = file.getName().substring(0,file.getName().lastIndexOf("."))+".txt";
                }else{
                    fileName = file.getName()+".txt";  //没有"."直接保存这个数据
                }
                File newFile = new File(file.getParentFile(),fileName);  //从父路径名字符串和子路径名字符串创建新的File实例
                file.renameTo(newFile); //重命名
            }
        }
    }

主方法:

File file = new File("F:"+File.separator+"Test"); //File.separator表示分隔符
        renameDir(file);

在面试过程之中经常出现,给你一个路径让你进行名称或者文件的批量修改操作就可以采用这个结构。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值