03-批量修改目录下面的文件名

package com.day1;

import java.io.File;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Random;

public class Demo8 {

    /**
     * 批量修改文件名
     */
    public static void main(String[] args) {
        
        File directory =new File("file");
        
        File[] list = directory.listFiles();
        
        for (File file : list) {
            //获取文件名
            String name=file.getName();
            //获取最后个 .符号的位置
            int index=name.lastIndexOf(".");
            //获取文件后缀名
            String ext=name.substring(index);
            //设置新的文件名
            String newFile= setName()+ext;
            //创建新文件对象
            File dest=new File(directory,newFile);
            //修改名称
            file.renameTo(dest);
        }
        System.out.println("更名成功");
    }

    /***
     * 生成随机数字
     * @return
     */
    private static String setName() {
        
        StringBuilder sb=new StringBuilder();
        //追加小写
        sb.append("qwertyuiopasdfghjklzxcvbnm");
        //将英文字符转成大写,存放于变量 upperString 当中
        String upperString=sb.toString().toUpperCase();
        //追加数字
        sb.append("0123456789");
        //追加大写
        sb.append(upperString);
        
        int len=sb.toString().length();
        
        Date date=new Date();
        SimpleDateFormat sdf=new SimpleDateFormat();
        sdf.applyPattern("yyyyMMddHHmmss"); //设置日期格式
        String datetime = sdf.format(date);
        
        StringBuilder str=new StringBuilder();
        str.append(datetime);
        //生成随机数字
        for(int i=0;i<=10;i++)
        {
            Random r=new Random();
            int index= r.nextInt(len);
            str.append(sb.charAt(index));
        }
        return str.toString();
        
    }
}

猜你喜欢

转载自www.cnblogs.com/hua900822/p/9702709.html