服务器之家

服务器之家 > 正文

java文件重命名(文件批量重命名)实例程序代码分享

时间:2019-10-22 11:51     来源/作者:java技术网

首先,查到java里文件重命名的方法为:renameTo();

我将180张图片放在d:\\backup下,用下面的程序进行重命名:

 

复制代码代码如下:

public void reName(){
        String dir = "D:\\backup\\";
        File file = new File(dir);
        String fileName[] = file.list();
        int number = fileName.length;
        File newFile[] = new File[number];

        System.out.println("number = " + number);
        for(int i=0; i<number; i++) {
            System.out.println((i+1) + ":" + fileName[i]);
            newFile[i] = new File(dir+fileName[i]);
        }
        System.out.println("============分割线=============");
        for(int i=0; i<number;i++){
            boolean flag = newFile[number - (i+1)].renameTo(new File(dir + (i+1)+".bmp"));
            if(flag){
                System.out.println("重命名成功"+(i+1));
            } else {
                System.out.println("失败");
            }
        }
    }

 

PS:java重命名失败的原因主要有以下几个:

1.源文件不存或不可写。
2.目标文件已存在。
3.源文件和目标不是在同一个盘时,不同的盘的文件格式是否相同。

下面是一个将待修改文件名和修改目的文件名分别存入数组中进行重命名的行为,比较不实用,应该将第一个参数改成目录名就好些了,不过,意思到就行了,^-^

 

复制代码代码如下:

/**
     * 
     * @param from 保存需要修改的文件名数组
     * @param to  保存修改后的文件名数组
*/
    public void reName_1(String from[], String to[]){
        int fileLength = from.length;
        boolean flag = false;
        boolean isOk = false;
        int count = 0;
        if(fileLength != to.length){
            System.out.println("传入数组长度不一致,故不进行重命名操作");
            return;
        }else{
            for(int i=0;i<fileLength;i++){
                for(int j=0;j<fileLength;j++){
                    if(from[i].equals(to[j]) ){
                        flag = false;
                        System.out.println("error:存在相同文件名,系统拒绝重命名操作");
                        return;
                    }else{
                        flag = true;
                    }
                }
            }
            if(flag){
                System.out.println("开始进行文件重命名工作》》》");
                for(int i=0;i<fileLength;i++){
                    isOk = new File(from[i]).renameTo(new File(to[i]));
                    if(isOk){
                        System.out.println("弟" + (i+1) +"个文件重命名成功");
                        count++;
                    }
                }
                if(count == fileLength){
                    System.out.println("全部重命名成功");
                }else{
                    System.out.println("存在重命名未成功的文件,请人工查看更改");
                }
            }
        }
    }
 
标签:

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字 2019-06-05
超A是什么意思 你好a表达的是什么
超A是什么意思 你好a表达的是什么 2019-06-06
返回顶部