java文件重命名(文件批量重命名)實(shí)例程序代碼分享
首先,查到j(luò)ava里文件重命名的方法為:renameTo();
我將180張圖片放在d:\\backup下,用下面的程序進(jìn)行重命名:
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重命名失敗的原因主要有以下幾個(gè):
1.源文件不存或不可寫(xiě)。
2.目標(biāo)文件已存在。
3.源文件和目標(biāo)不是在同一個(gè)盤(pán)時(shí),不同的盤(pán)的文件格式是否相同。
下面是一個(gè)將待修改文件名和修改目的文件名分別存入數(shù)組中進(jìn)行重命名的行為,比較不實(shí)用,應(yīng)該將第一個(gè)參數(shù)改成目錄名就好些了,不過(guò),意思到就行了,^-^
/**
*
* @param from 保存需要修改的文件名數(shù)組
* @param to 保存修改后的文件名數(shù)組
*/
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("傳入數(shù)組長(zhǎng)度不一致,故不進(jìn)行重命名操作");
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:存在相同文件名,系統(tǒng)拒絕重命名操作");
return;
}else{
flag = true;
}
}
}
if(flag){
System.out.println("開(kāi)始進(jìn)行文件重命名工作》》》");
for(int i=0;i<fileLength;i++){
isOk = new File(from[i]).renameTo(new File(to[i]));
if(isOk){
System.out.println("弟" + (i+1) +"個(gè)文件重命名成功");
count++;
}
}
if(count == fileLength){
System.out.println("全部重命名成功");
}else{
System.out.println("存在重命名未成功的文件,請(qǐng)人工查看更改");
}
}
}
}
相關(guān)文章
JAVA大作業(yè)之圖書(shū)管理系統(tǒng)實(shí)現(xiàn)全解
隨著網(wǎng)絡(luò)技術(shù)的高速發(fā)展,計(jì)算機(jī)應(yīng)用的普及,利用計(jì)算機(jī)對(duì)圖書(shū)館的日常工作進(jìn)行管理勢(shì)在必行,本篇文章手把手帶你用Java實(shí)現(xiàn)一個(gè)圖書(shū)管理系統(tǒng),大家可以在過(guò)程中查缺補(bǔ)漏,提升水平2022-01-01
Spring @Component自定義注解實(shí)現(xiàn)詳解
@Component是一個(gè)元注解,意思是可以注解其他類注解,如@Controller @Service @Repository @Aspect。官方的原話是:帶此注解的類看為組件,當(dāng)使用基于注解的配置和類路徑掃描的時(shí)候,這些類就會(huì)被實(shí)例化2022-09-09
java使用MulticastSocket實(shí)現(xiàn)多點(diǎn)廣播
這篇文章主要為大家詳細(xì)介紹了java使用MulticastSocket實(shí)現(xiàn)多點(diǎn)廣播,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-01-01
Java布爾值Boolean和boolean之間轉(zhuǎn)換實(shí)例用法
在本篇文章里小編給大家整理的是一篇關(guān)于Java布爾值Boolean和boolean之間轉(zhuǎn)換實(shí)例用法內(nèi)容,有需要的朋友們跟著學(xué)習(xí)參考下。2021-06-06
解決java.sql.SQLException:The?server?time?zone?value?&apo
這篇文章主要介紹了解決java.sql.SQLException:The?server?time?zone?value?'?D1ú±ê×?ê±??'?is?unrecognized問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-03-03
Java中static與instance的區(qū)別及作用詳解
這篇文章主要為大家介紹了Java中static與instance的區(qū)別及作用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07

