2012-04-03 25 views
-1

In meiner Anwendung gibt es eine Datei, die
Say one.pdf. Ich möchte den Dateinamen als two.pdf mit in demselben Verzeichnis ändern.
Ich versuchte mit Java, die nicht funktioniert.Umbenennen einer Datei

File f1=new File("E:\\one.pdf"); 
File f2=new File("E:\\two.pdf"); 
f1.renameTo(f2); 
+2

welche Art von Fehler? –

+2

Welchen Fehler bekommen Sie? Genauer gesagt bitte –

+0

Vielleicht haben Sie bereits eine Datei mit diesem Namen im selben Verzeichnis .. (two.pdf) – Kayser

Antwort

2

Ihr Code hat einen bedeutenden Fehler:

Sie das Ergebnis nicht von File#renameTo() überprüfen. Die Umbenennung kann fehlschlagen, wenn die UAC aktiviert oder das Ziel ungültig ist.

0

Ich sehe nicht sofort das Problem mit Ihrem Code, es sei denn, dies ist eine Art von Windows-Pfad oder ein Problem mit Berechtigungen. Wie in den Kommentaren erwähnt, sollten Sie immer die Ausnahmen oder Fehlerergebnisse anzeigen.

Eine Sache zu prüfen wäre besser, die bestehende File Objekt zu verwenden, um die Datei im gleichen Verzeichnis umbenennen:

// someExistingFile defined above 
File destinationFile = new File(someExistingFile.getParentFile(), "two.pdf"); 
someExistingFile.renameTo(destinationFile); 

Dies wird das Verzeichnis der bestehenden Datei verwenden und die neue Datei in Bezug auf sie erstellen .