OK, je me sens comme cela devrait être facile, mais il me manque évidemment quelque chose de fondamental à l'écriture de fichiers en Java. J'ai ceci:FileNotFound exception lors de la tentative d'écriture dans un fichier
File someFile = new File("someDirA/someDirB/someDirC/filename.txt");
et je veux juste écrire dans le fichier. Cependant, tandis que someDir existe, certains DirB (et donc certains DirC et filename.txt) n'existent pas. Pour ce faire:
BufferedWriter writer = new BufferedWriter(new FileWriter(someFile));
déclenche un FileNotFoundException
. Eh bien, euh, sans blague. J'essaye de le créer après tout. Dois-je découper le chemin du fichier en composants, créer les répertoires, puis créer le fichier avant d'instancier l'objet FileWriter?
Merci, mais il y a quelques bits non faits ci-dessus. Premièrement, vous pouvez appeler mkdirs() sur les répertoires existants et il retournera simplement false au lieu de lancer une exception. De plus, dans mon cas, une fois les répertoires créés, je peux passer l'étape createNewFile() et aller directement à l'étape FileWriter. –
createNewFile() est redondant et donc downvoting. – EJP
createNewFile() est redondant mais le reste du code fonctionne correctement. D'où l'upvoting. –