Możemy zmienić nazwę pliku powiedzenia test.txt
do test1.txt
?
Jeśli test1.txt
istnieje, czy zmieni nazwę?
Jak zmienić nazwę na już istniejący plik test1.txt, aby nowa zawartość pliku test.txt została dodana do niego w celu późniejszego wykorzystania?
java
file
rename
file-rename
JonasCz - Przywróć Monikę
źródło
źródło
Odpowiedzi:
Skopiowano z http://exampledepot.8waytrips.com/egs/java.io/RenameFile.html
Aby dołączyć do nowego pliku:
źródło
Path
sposób działa dla mnie,renameTo
zawsze zwraca fałsz. Zaznacz odpowiedź kr37 lub tę odpowiedźW skrócie:
Więcej szczegółów:
Poniższe dane są kopiowane bezpośrednio z http://docs.oracle.com/javase/7/docs/api/index.html :
Załóżmy, że chcemy zmienić nazwę pliku na „nowa nazwa”, pozostawiając plik w tym samym katalogu:
Alternatywnie, załóżmy, że chcemy przenieść plik do nowego katalogu, zachowując tę samą nazwę pliku i zastępując istniejący plik o tej nazwie w katalogu:
źródło
Chcesz użyć metody renameTo na obiekcie File .
Najpierw utwórz obiekt File, który będzie reprezentował miejsce docelowe. Sprawdź, czy ten plik istnieje. Jeśli nie istnieje, utwórz nowy obiekt File dla pliku do przeniesienia. wywołaj metodę renameTo na przenoszonym pliku i sprawdź zwróconą wartość z renameTo, aby sprawdzić, czy wywołanie zakończyło się pomyślnie.
Jeśli chcesz dołączyć zawartość jednego pliku do drugiego, dostępnych jest kilka programów do zapisu. Na podstawie rozszerzenia brzmi to jak zwykły tekst, więc spojrzałbym na FileWriter .
źródło
Uważam, że dla Java 1.6 i starszych najbezpieczniejszym i najczystszym interfejsem API jest Guava's Files.move .
Przykład:
Pierwsza linia zapewnia, że lokalizacja nowego pliku jest tym samym katalogiem, tj. Katalogiem nadrzędnym starego pliku.
EDYCJA: Napisałem to zanim zacząłem używać Javy 7, która wprowadziła bardzo podobne podejście. Więc jeśli używasz Java 7+, powinieneś zobaczyć i zagłosować odpowiedź kr37.
źródło
Zmiana nazwy pliku poprzez przeniesienie go do nowej nazwy. (FileUtils pochodzi z Apache Commons IO lib)
źródło
To prosty sposób na zmianę nazwy pliku:
źródło
Aby zastąpić istniejący plik nazwą „tekst1.txt”:
źródło
Spróbuj tego
Uwaga: Zawsze powinniśmy sprawdzać zwracaną wartość renameTo, aby upewnić się, że zmiana nazwy pliku zakończyła się pomyślnie, ponieważ jest zależna od platformy (inny system operacyjny, inny system plików) i nie zgłasza wyjątku we / wy, jeśli zmiana nazwy nie powiedzie się.
źródło
Tak, możesz użyć File.renameTo (). Pamiętaj jednak, aby mieć poprawną ścieżkę podczas zmiany nazwy pliku na nowy.
}
źródło
Jeśli chodzi tylko o zmianę nazwy pliku, możesz użyć File.renameTo () .
W przypadku, gdy chcesz dołączyć zawartość drugiego pliku do pierwszego, spójrz na FileOutputStream z opcją konstruktora append lub To samo dla FileWriter . Będziesz musiał przeczytać zawartość pliku, aby dołączyć i zapisać je za pomocą strumienia wyjściowego / programu zapisującego.
źródło
O ile wiem, zmiana nazwy pliku nie spowoduje dodania jego zawartości do istniejącego pliku o nazwie docelowej.
O zmianie nazwy pliku w Javie, zobacz dokumentację dla
renameTo()
metody w klasieFile
.źródło
prace, ale tylko wtedy, gdy jesteś blisko (lub AutoClose) Wszystkie wykorzystane zasoby (
InputStream
,FileOutputStream
etc.) Myślę, że tę samą sytuację zfile.renameTo
lubFileUtils.moveFile
.źródło
Oto mój kod, aby pomyślnie zmienić nazwę wielu plików w folderze:
i uruchom go na przykład:
źródło
Uruchomiony kod jest tutaj.
źródło