Nella mia applicazione, ho bisogno di registrare video. Prima di iniziare la registrazione, sto assegnando un nome e una directory. Al termine della registrazione, l'utente ha la possibilità di rinominare il suo file. Ho scritto il seguente codice ma sembra che non funzioni.android, Come rinominare un file?
Quando l'utente inserisce il nome del file e cliccare sul tasto Farò questo:
private void setFileName(String text) {
String currentFileName = videoURI.substring(videoURI.lastIndexOf("/"), videoURI.length());
currentFileName = currentFileName.substring(1);
Log.i("Current file name", currentFileName);
File directory = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MOVIES), MEDIA_NAME);
File from = new File(directory, "currentFileName");
File to = new File(directory, text.trim() + ".mp4");
from.renameTo(to);
Log.i("Directory is", directory.toString());
Log.i("Default path is", videoURI.toString());
Log.i("From path is", from.toString());
Log.i("To path is", to.toString());
}
Testo: è il nome che viene immesso dall'utente. Nome file corrente: è il nome che è assegnato da me prima di registrare MEDIA_NAME: nome della cartella
Logcat mostra questo:
05-03 11:56:37.295: I/Current file name(12866): Mania-Karaoke_20120503_115528.mp4
05-03 11:56:37.295: I/Directory is(12866): /mnt/sdcard/Movies/Mania-Karaoke
05-03 11:56:37.295: I/Default path is(12866): /mnt/sdcard/Movies/Mania-Karaoke/Mania-Karaoke_20120503_115528.mp4
05-03 11:56:37.295: I/From path is(12866): /mnt/sdcard/Movies/Mania-Karaoke/currentFileName
05-03 11:56:37.295: I/To path is(12866): /mnt/sdcard/Movies/Mania-Karaoke/hesam.mp4
Ogni suggerimento sarebbe apprezzato.
oh, mio dio! Che stupido errore è stato che l'ho fatto !!!! Grazie caro Sanjay. Ora funziona bene dopo averlo cambiato. – Hesam
@Hesam A volte questi errori stupidi prendono tutto il nostro tempo .. :) applausi ... Codifica di coccole :) – COD3BOY
lol, tutti fanno errori ma questo è davvero divertente, prenditi una pausa e torna indietro dopo esserti energizzato . – Krypton