拿到一些文件后文件名就只是编号,还好一个txt说明
哎,谁让咱们是程序员呢,编个小程序改一下就是老
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
public class ChengeFileName {
/**
* Title:利用io流实现文件批量修改命名
* Copyright: Copyright (c) 2012
* @author: 烽火
* @version 1.0 2012-09-24
* @throws IOException
*/
public static void main(String[] args) throws IOException {
//得到存有文件名的文件的流对象
FileReader fr = new FileReader("F:\\ProgramView\\java\\JDBC\\a.txt");
BufferedReader bfr = new BufferedReader(fr);
StringBuffer sb = new StringBuffer();
//逐行读取文件中的字符串
String fname = null;
while((fname=bfr.readLine()) != null){
sb.append(fname.trim()+",");
//System.out.println(fname);
}
String sbname = sb.toString();
//得到存有文件名的数组
String[] nfnames = sbname.split(",");
/*for (int i = 0; i < nfnames.length; i++){
System.out.println(nfnames[i]);
}*/
//得到存有待修改文件的文件夹对象
File file = new File("F:\\ProgramView\\java\\JDBC\\view");
String[] fnames = null;
if (!file.isFile() && file.isDirectory()){
//得到待修改文件名
fnames = file.list();
/*for (int i = 0; i < fnames.length; i++){
System.out.println(fnames[i].substring(0, fnames[i].lastIndexOf(".")));
}*/
}else{
System.out.println("非文件!");
}
for (int i = 0; i < fnames.length; i++){
int index = Integer.parseInt(fnames[i].substring(0, fnames[i].lastIndexOf(".")))-1;
//得到一个待命名文件对象
File oldf = new File("F:\\ProgramView\\java\\JDBC\\view\\"+fnames[i]);
//获取新名称文件的文件对象
File newf = new File("F:\\ProgramView\\java\\JDBC\\view\\"+nfnames[index]+".avi");
//进行重命名
oldf.renameTo(newf);
}
System.out.println("重命名完成!");
}
}
注释部分的代码只是用来测试;
提示:如你想用此方法修改文件名,最好先将文件备份。否则出错就麻烦了!
分享到:
相关推荐
java.io 包 java.io.File ============================================================================================ *表示磁盘文件或目录的路径 *可以表示一个不存在的路径 创建实例 --------------------...
Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP...
Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP...
Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系,这些代码面向初级、中级Java程序员。 Java访问权限控制源代码 1个目标文件 摘要:Java源码,...
Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系,这些代码面向初级、中级Java程序员。 Java访问权限控制源代码 1个目标文件 摘要:Java源码,...
Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP...
Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP...
Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP...
Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP...
Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP...
Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP...
Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP...
Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP...
Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP...
Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP...
Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP...
学生提问:当我们使用编译C程序时,不仅需要指定存放目标文件的位置,也需要指定目标文件的文件名,这里使用javac编译Java程序时怎么不需要指定目标文件的文件名呢? 13 1.5.3 运行Java程序 14 1.5.4 根据...
书名:《Java开发实战1200例(第I卷)》(清华大学出版社.李钟尉,陈丹丹) PDF格式扫描版,全书分为24章,共817页。2011年1月出版。 全书压缩打包成4部分,这是第3部分 注:本系列图书的第I、II卷再版时均相应改名为...