JAVA 遍历文件夹下文件并更改文件名称

  周末因为一些原因,需要批量更改一些文件的名称,使其随机,就随手写了点代码。

增加一个随机字母:

public static void changeName(String path){
		File file = new File(path);
		File[] files = file.listFiles();
		for (int i = 0; i < files.length; i++) {
			if(files[i].isDirectory()){
				changeName(files[i].toString());
			}else{
				String name = files[i].getAbsolutePath();
				files[i].renameTo(new File("G:\\newSong\\"+getChar()+files[i].getName()));
			}

		}

	}

	public static String getChar(){
		String[] datas = {"a","b","c","d","e","f","g","h","k","m","n","o","p","q","r","s","t","u","v","w","x","y","z"};
		Random r = new Random();
		return datas[r.nextInt(datas.length-1)];
	}
	public static void main(String[] args) {
		changeName("G:\\song");
	}

  删除掉随机字母

public static void changeName(String path){
		File file = new File(path);
		File[] files = file.listFiles();
		for (int i = 0; i < files.length; i++) {
			if(files[i].isDirectory()){
				changeName(files[i].toString());
			}else{
				String name = files[i].getAbsolutePath();//newSong\				String nameStr = files[i].getName().substring(1,files[i].getName().length());
				files[i].renameTo(new File("G:\\song\\"+nameStr));
			}

		}

	}

	public static String getChar(){
		String[] datas = {"a","b","c","d","e","f","g","h","k","m","n","o","p","q","r","s","t","u","v","w","x","y","z"};
		Random r = new Random();
		return datas[r.nextInt(datas.length-1)];
	}
	public static void main(String[] args) {
		changeName("G:\\newSong");
	}

  

时间: 2024-10-24 05:07:58

JAVA 遍历文件夹下文件并更改文件名称的相关文章

android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件

1.下载工具 xstream 下载最新版本地址: https://nexus.codehaus.org/content/repositories/releases/com/thoughtworks/xstream/ 下载完成后 把jar包导入到自己的android项目中 2.asset 文件夹 下的 aa.xml 文件 <?xml version="1.0" encoding="UTF-8"?><product>    <name>

获取某文件夹下所有文件名、文件夹名、后缀名

今天在提交github时,突然觉得提交得很慢,想到github允许设置.gitignore文件进行某些后缀名的忽略,于是乎决定好好设置一下.gitimnore. 于是乎....我发现,一个很大的项目,或者一个很杂乱的文件库,很难知道这里面到底存在哪些后缀名的文件,一个文件夹一个文件夹的找又太慢,而且容易出错. 于是乎....我开始敲代码了,顺带着把获取某文件夹下所有文件名.文件夹名.后缀名这三个功能一起实现了. [来看效果] 不输入参数时或者第一个参数输入"\"时,默认为当前目录,显示

VBA读取可选择文件夹下可选择txt文件内容

Sub OneTxt() '打开一个txt文件 Dim Filename As Variant, extLine&, mArr() As String Dim i%, j% ChDir ThisWorkbook.Path Filename = Application.GetOpenFilename("Text Files (*.txt), *.txt", , "请选取档案", , MultiSelect:=True) j = 1 For k = 1 To U

将文件夹下的一级目录文件改名并移动目录

#此段代码实现将文件夹下的一级目录文件改名并移动目录 #list = os.listdir(Datadir) #列出文件夹下所有的目录与文件 #for i in range(0,len(list)): # path = os.path.join(Datadir,list[i]) # list2=os.listdir(path) # for j in range(0,len(list2)): # path2 = os.path.join(path,list2[j]) # if os.path.is

JavaSE8基础 File list 获取指定文件夹下的第一层文件和文件夹的名字

os :windows7 x64    jdk:jdk-8u131-windows-x64    ide:Eclipse Oxygen Release (4.7.0) information: 被查看文件夹中的内容截图. code: package jizuiku0; import java.io.File; /* * @version V17.09 */ public class GetName { public static void main(String[] args) { String

python 找某个文件夹下第多少个文件

preface:同仁遇到一个问题,需要在上万个文件中找到第7000个文件,凌乱...查了下python相关资料,虽说没有完全解决,但还是有东西记录下来. 一.对某个文件夹下遍历文件,os.walk可破.若是多个文件夹的话,配合isdir, isfile等函数可破(参数可有可无): <span style="font-size:18px;">for i in os.walk(os.getcwd(),topdown=True, onerror=None, followlinks

matlab如何读取某指定文件夹下的指定格式文件

%% 正负样本所在folder fext='*.png';%要读取的文件格式 positiveFolder='F:\课题\Crater detection\machingLearning\Positive Images\';%要读取文件的路径 dtPositive=dir([positiveFolder fext]);%将要读取文件的路径加格式组合 namePositiveCell={dtPositive.name};%读取指定文件夹下的所有符合格式要求的文件名元胞 %% 构造元胞,用来存储指定

批量将制定文件夹下的全部Excel文件导入微软SQL数据库

以下代码将c:\cs\文件夹下的全部Excle中数据导入到SQL数据库 declare @query vARCHAR(1000) declare @max1 int declare @count1 int declare @filename varchar(100) set @count1=0 create table #x(name varchar(200)) insert #x exec('master.dbo.xp_cmdshell  ''dir c:\cs\*.xls  /b''') d

JAVA利用递归的方法删除一个文件夹以及文件夹下所有的子文件

public static boolean deleteFolder(String url) { File file = new File(url); if (!file.exists()) { return false; } if (file.isFile()) { file.delete(); return true; } else { File[] files = file.listFiles(); for (int i = 0; i < files.length; i++) { Stri

自动删除指定文件夹下N天前文件的批处理

@echo off if not exist d:\delFiles goto EOF rem 定义文件夹'数组'  set folders[0]=folder1 set folders[1]=folder2 set folders[2]=folder3 rem 如果D:\delFiles下改变文件夹,请修改上面'数组' set sday=-3 rem 删除D:\delFiles下的sday天前建的文件,修改天数请修改上面的sday ForFiles /P D:\delFiles /D %sda