Je dois renommer un fichier .afp
avec le nom du fichier .txt
. J'ai trébuché sur de nombreuses «solutions» tout en essayant de faire fonctionner cette chose et rien n'a aidé.Renommer un fichier avec une chaîne à partir d'un fichier d'extension différente
Disons que j'ai un fichier txt dans C:/test/a/Mytes t.txt
et je veux renommer le fichier .afp
qui est dans C:/files/b/Testf ile.afp
. C'est ce que j'essaie de faire (selon les solutions trouvées sur ce site) et ça ne marche pas. Je coupe l'extension du fichier .txt
et obtenir seulement le nom du fichier:
String fileNameNoExt=fileName.substring(0, fileName.lastIndexOf('.'));
//fileName is .txt file name
File file = new File(afpSRC, afpName);
file.renameTo(new File(afpSRC, fileNameNoExt + ".afp"));
afpSRC
contient le chemin vers le dossier dans lequel le fichier est situé .afp
et afpName
est le nom du fichier.
Quelqu'un peut-il me dire pourquoi cela ne fonctionne pas et .afp
le nom du fichier reste le même? Probablement parce que File file = new File(afpSRC, afpName);
ne fait référence à aucun fichier existant.
Ce qui est dans 'filename'? Il doit être seulement le nom du fichier pas le chemin complet pour que cela fonctionne. – jingx
J'ai ajouté un commentaire après, vous n'avez probablement pas vu, désolé. fileName est uniquement txt fileName. pas le chemin absolu –