Ответ 1
Что-то вроде:
File file = new File("C:\\user\\Desktop\\dir1\\dir2\\filename.txt");
file.getParentFile().mkdirs();
FileWriter writer = new FileWriter(file);
Я хочу написать новый файл с FileWriter
. Я использую его следующим образом:
FileWriter newJsp = new FileWriter("C:\\user\Desktop\dir1\dir2\filename.txt");
Теперь dir1
и dir2
в настоящее время не существует. Я хочу, чтобы Java создавала их автоматически, если их еще нет. На самом деле Java должен установить весь путь к файлу, если он еще не существует.
Как я могу это достичь?
Что-то вроде:
File file = new File("C:\\user\\Desktop\\dir1\\dir2\\filename.txt");
file.getParentFile().mkdirs();
FileWriter writer = new FileWriter(file);
Так как Java 1.7 вы можете использовать Files.createFile:
Path pathToFile = Paths.get("/home/joe/foo/bar/myFile.txt");
Files.createDirectories(pathToFile.getParent());
Files.createFile(pathToFile);
Используйте File.mkdirs()
:
File dir = new File("C:\\user\\Desktop\\dir1\\dir2");
dir.mkdirs();
File file = new File(dir, "filename.txt");
FileWriter newJsp = new FileWriter(file);
Используйте File.mkdirs()
.
Используйте FileUtils для обработки всех этих головных болей.
Изменить: например, используйте нижеприведенный код для записи в файл, этот метод будет "проверять и создавать родительский каталог, если он не существует".
openOutputStream(File file [, boolean append])