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("存在重命名未成功的文件,请人工查看更改");
                }
            }
        }
    }

(0)

相关推荐

  • Java实现文件批量重命名具体实例

    Windows操作系统可以实现重命名文件操作,却不能实现批量重命名.本实例实现了批量重命名功能,可以将一个文件夹内同一类型的文件按照一定的规则批量重命名.用户可以给出重命名模板,程序可以根据模板对相应的文件进行重命名.此外,还可以在重命名模板中添加特殊符号,程序会将这些特殊符号替换成重命名后的文件编号. 思路分析: 1.先看视图层,需要一些JLabel控件分别显示指示用户的信息,三个JTextField控件分别显示所选路径.输入文件名模板即输入扩展名,两个JButton控件分别用来浏览文件夹和开

  • Java 实现文件批量重命名亲测可用(精简版)

    之前在网上下载了很多视频,解压缩后,发现里面每个文件前面都有一长串的网址,导致我根本看不清每个视频的名字到底叫什么? 网上搜了一些批量重命名的方法,可都不是我想要的,既然这样,干脆自己动手用Java写一个吧.测了一下应该没问题,现在分享出来. 先上代码: import java.io.File; import java.util.HashMap; import java.util.Map; import java.util.Map.Entry; /** * 重命名规则类 * @author ja

  • Java文件批量重命名批量提取特定类型文件

    原因: 因为在网上下载视频教程,有的名字特别长,一般都是机构或者网站的宣传,不方便直接看到视频的简介,所以做了下面的第一个功能. 因为老师发的课件中,文件夹太多,想把docx都放在同一个文件夹下面,一个一个找出来太麻烦,所以做了第二个功能. 最近刚刚学了Java文件和流的知识,所以正好练练手,这也是自己的第一个exe程序,分享一下哈. (导出jar文件,以及用工具exe4j生成exe文件,这部分省略了哈) 用到的知识: 用到Java中文件,流的知识,以及简单的GUI知识. 功能: 功能一:去除文

  • 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

  • java网络编程学习java聊天程序代码分享

    复制代码 代码如下: package com.neusoft.edu.socket;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.ServerSocket;import java.net.Socket;/** * 服务器端代码 * 获取客户端发送的信息,显示并且返回对应的回复 *

  • java类中生成jfreechart,返回图表的url地址 代码分享

    web.xml中设置: 复制代码 代码如下: <servlet> <servlet-name>DisplayChart</servlet-name> <servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class> </servlet > <servlet-mapping> <servlet-name>DisplayChart</ser

  • java使用smslib连接短信猫发送短信代码分享

    复制代码 代码如下: import java.util.ArrayList;import java.util.List; import org.apache.log4j.Logger;import org.smslib.ICallNotification;import org.smslib.IInboundMessageNotification;import org.smslib.IOutboundMessageNotification;import org.smslib.InboundMess

  • java分形绘制科赫雪花曲线(科赫曲线)代码分享

    首先我们举个例子:我们可以看到西兰花一小簇是整个花簇的一个分支,而在不同尺度下它们具有自相似的外形.换句话说,较小的分支通过放大适当的比例后可以得到一个与整体几乎完全一致的花簇.因此我们可以说西兰花簇是一个分形的实例.分形一般有以下特质:在任意小的尺度上都能有精细的结构: 太不规则,以至难以用传统欧氏几何的语言描述: (至少是大略或任意地)自相似豪斯多夫维数会大於拓扑维数: 有著简单的递归定义.(i)分形集都具有任意小尺度下的比例细节,或者说它具有精细的结构.(ii)分形集不能用传统的几何语言来

  • Java版给爱人表白的玫瑰花程序代码

    1 书写表白语句的frame(渐入功能) package com.wanju.blessing; import java.awt.Color; import java.awt.Container; import java.awt.Dimension; import java.awt.Font; import java.awt.Graphics; import java.awt.Image; import java.awt.Toolkit; import java.awt.event.MouseA

  • PHP实现读取文件夹及批量重命名文件操作示例

    本文实例讲述了PHP实现读取文件夹及批量重命名文件操作.分享给大家供大家参考,具体如下: 以读取从网上下载的评书解压后的文件夹为例,并批量重命名 文件夹内容如下,现在使用php读取这个文件夹里面的文件,并批量重命名为"隋唐演义+序号.mp3"的格式: <?php $dir1 = './dir1/';//读取文件夹名称 (重命名为dir1避免中文报错,移动到与要执行的php文件同级目录) $filearr = scandir($dir1);//读取文件夹 print_r($file

  • java StringBuilder类的详解及简单实例

     java  StringBuilder类的详解及简单实例 实现代码: public class StringBuilderTest { /** * @param args */ public static void main(String[] args) { StringBuilder sb = new StringBuilder(); // 追加字符串 sb.append("java");//sb = "java" // 插入 sb.insert(0 , &qu

  • java  StringBuilder类的详解及简单实例

     java  StringBuilder类的详解及简单实例 实现代码: public class StringBuilderTest { /** * @param args */ public static void main(String[] args) { StringBuilder sb = new StringBuilder(); // 追加字符串 sb.append("java");//sb = "java" // 插入 sb.insert(0 , &qu

随机推荐