Reputation: 17
With this code, I can rename two Folders:
public static void main(String[] args)
{
RenameFolder f = new RenameFolder();
f.RenameFolder();
}
private void RenameFolder()
{
File f1= new File("C:\\Users\\Nm\\Desktop\\Lauer");
File f2= new File("C:\\Users\\Nm\\Desktop\\Axeler");
try {
if(f1.exists()) {
f1.renameTo(f2);
System.out.println("Folder " +f1.getName()+
" was changed into " +f2.getName() +"..." );
} else {
f1.mkdir();
System.out.println("Folder " +f1.getName()+ " was created..." );
}
} catch(Exception e) {
e.printStackTrace();
}
}
}
How can I do that when I have to rename over thousand folders with names? For example:
raro -> noto
mano -> kaoto
Daum -> Loeme
Gato -> Rate
Ta+To -> Mo~no
etc...
Upvotes: 1
Views: 445
Reputation: 56
put all the folder names in an array and loop through the array to rename all folders.
private void RenameFolder()
{
ArrayList CurrentName=new ArrayList();
ArrayList NewName=new ArrayList();
CurrentName.add(path);
NewName.add(path);
//repeat about two lines for as many folders you want.
for(int i=0;i<CurrentName.size()-1;i++){
File f1= new File(CurrentName.get(i));
File f2= new File(NewName.get(i));
try {
if(f1.exists()) {
f1.renameTo(f2);
System.out.println("Folder " +f1.getName()+
" was changed into " +f2.getName() +"..." );
} else {
f1.mkdir();
System.out.println("Folder " +f1.getName()+ " was created..." );
}
} catch(Exception e) {
e.printStackTrace();
}
}
}
Upvotes: 1