Sono un po 'confuso con tutte queste nuove classi di I/O su file in JDK7.Come rinominare (non spostare) un file in JDK7?
Diciamo che ho uno Path
e voglio rinominare il file, rappresenta.
Come specificare il nuovo nome, quando è previsto di nuovo Path
?
Path p = /* path to /home/me/file123 */;
Path name = p.getName(); /* gives me file123 */
name.moveTo(/* what now? */); /* how to rename file123 to file456? */
NOTA: Perché ho bisogno di JDK7? Gestione dei collegamenti simbolici !
Il problema è: devo farlo con i file, quali nomi e posizioni sono noti in fase di esecuzione. Quindi, quello di cui ho bisogno, è un metodo sicuro (senza effetti collaterali eccezionali) per creare un nuovo nome-Percorso di qualche vecchio nome-Percorso.
Path newName(Path oldName, String newNameString){
/* magic */
}
Quindi posso creare un nuovo 'percorso'? C'è qualcosa di più semplice di: Path newName = Paths.get (name.getParent(). ToString() + pathSeparator + "newName"); ? –
Sì, ora la domanda è: come creare tale percorso in modo sicuro, in modo che nessuna circostanza eccezionale possa causare il fallimento. –
Potrei tentare di descrivere come si può prendere il percorso originale, rimuovere il nome 'file123' concatenare 'file456' e invece invocare 'name.moveTo()' ma poiché non conosco davvero Java, direi .Quello di cui sono ** sicuro ** è che un * spostamento * diventa un * rinominare * se solo il nome file è diverso. – pavium