1. Ключевые технические моменты создания файлов и каталогов следующие:
1. CreateNewFile класса File создает новый пустой файл на основе абстрактного пути. Если файл, указанный абстрактным путем, существует, создание не удается.
2. Метод mkdir класса File создает каталог на основе абстрактного пути.
3. Метод mkdirs класса File создает каталоги на основе абстрактных путей, включая создание несуществующих родительских каталогов.
4. Метод createTempFile класса File создает временный файл. Вы можете указать префикс имени файла, суффикс и каталог, в котором находится файл. Если каталог не указан, он будет сохранен во временной папке системы.
5. За исключением метода mkdirs, при создании файлов и каталогов вышеуказанными методами необходимо убедиться, что целевой файл не существует, а родительский каталог существует, иначе создание завершится неудачно.
Во-вторых, пример демонстрации выглядит следующим образом:
импорт java.io.File; импорт java.io.IOException общественный класс CreateFileUtil { public static boolean createFile (String destFileName) { File file = new File (destFileName); if (file.exists()) { System.out.println; («Создать один файл» + destFileName + «Ошибка, целевой файл уже существует!»); return false }; (destFileName.endsWith(File.separator)) { System.out.println("Создать один файл" + destFileName + "Ошибка, целевой файл не может быть каталогом!"); //Определить, является ли каталогом! где находится целевой файл существует если(!file.getParentFile().exists()) { //Если каталог, в котором находится целевой файл, не существует, создаем родительский каталог System.out.println("Каталог, в котором находится целевой файл, не существует, подготовьтесь к его созданию!"); .getParentFile().mkdirs()) { System.out.println("Не удалось создать каталог, в котором находится целевой файл!"); return false; } } //Создать целевой файл, попробуйте { if (file.createNewFile). ()) { System.out.println("Создать один файл" + destFileName + "Успех!"); return true; } else { System.out.println("Создать один файл" + destFileName + "Failure!"); return false; } } catch (IOException e) { e.printStackTrace( ) ; System.out.println("Создать один файл" + destFileName + "Failed!" + e.getMessage()); return false; createDir(String destDirName) { File dir = new File(destDirName); if (dir.exists()) { System.out.println("Создать каталог" + destDirName + "Ошибка, целевой каталог уже существует"); ; } if (!destDirName.endsWith(File.separator)) { destDirName = destDirName + File.separator } //Создаем каталог if; (dir.mkdirs()) { System.out.println("Создать каталог" + destDirName + "Успешно! "); return true; } else { System.out.println("Создать каталог" + destDirName + "Failed!"); return false; } } public static String createTempFile(String prefix, String suffix, String dirName) { File tempFile = null; if (dirName == null) { try{ //Создаем временный файл в папке по умолчанию tempFile = File.createTempFile(prefix, suffix); // Возвращаем путь к временному файлу return tempFile.getCanonicalPath(); } catch (IOException e) { e.printStackTrace(); System.out.println("Не удалось создать временный файл!" + e.getMessage ()) ; return null; } } else { File dir = new File(dirName); //Если каталог, в котором находится временный файл, не существует, сначала создайте его if (!dir.exists()) { if (!CreateFileUtil.createDir(dirName)) { System.out.println("Не удалось создать временный файл, каталог, в котором находится временный файл, не может быть создан!" } } return null; временный файл tempFile в указанном каталоге = File.createTempFile(prefix, suffix, dir); return tempFile.getCanonicalPath() } catch (IOException e) { e.printStackTrace(); System.out.println("Не удалось создать временный файл!" + e.getMessage()); return null } } } public static void main(String[] args) { //Создаем строку каталога dirName = "D:/work/temp/temp0/temp1"; CreateFileUtil.createDir(dirName); //Создаем строку файла fileName = dirName + "/temp2/tempFile.txt"; CreateFileUtil.createFile(fileName); //Создаем временный файл. String prefix = "temp"; String suffix = ".txt"; for (int i = 0; i < 10; i++) { System.out.println("Создан временный файл: " + CreateFileUtil.createTempFile(префикс, суффикс, имя_каталога) }); //Создаем временный файл в каталоге по умолчанию for (int i = 0; i < 10; i++) { System.out.println("Временный файл был создан в каталоге по умолчанию:" + CreateFileUtil.createTempFile(prefix, suffix) , нулевой )); } } }Результат вывода:
Каталог D:/work/temp/temp0/temp1 успешно создан! Каталог, в котором находится целевой файл, не существует, приготовьтесь его создать! Один файл D:/work/temp/temp0/temp1/temp2/tempFile.txt успешно создан! Создан временный файл: D:work emp emp0 emp1 emp5171.txt Создан временный файл: D:work emp emp0 emp1 emp5172.txt Создан временный файл: D:work emp emp0 emp1 emp5173.txt Создан временный файл : D:work emp emp0 emp1 emp5174.txt Создан временный файл: D:work emp emp0 emp1 emp5175.txt Создан временный файл: D:work emp emp0 emp1 emp5176.txt Создан временный файл: D:work emp emp0 emp1 emp5177.txt Создан временный файл: D:work emp emp0 emp1 emp5178.txt Создан Временные файлы: D :работа emp emp0 emp1 emp5179.txt Были созданы временные файлы: D:work emp emp0 emp1 emp5180.txt Временные файлы были созданы в каталоге по умолчанию: C:Documents and SettingsAdministratorLocal SettingsTemp emp5181.txt Временные файлы были созданы в каталоге по умолчанию: C:Documents and SettingsAdministratorLocal SettingsTemp emp5182.txt Временный файл был создан в каталоге по умолчанию: C:Documents and SettingsAdministratorLocal SettingsTemp emp5183.txt Временный файл был создан в каталоге по умолчанию: C:Documents and SettingsAdministratorLocal SettingsTemp emp5184.txt Временный файл был создан в каталоге по умолчанию: C: Документы и настройкиАдминистраторЛокальные настройкиTemp emp5185.txt Временный файл был создан в каталоге по умолчанию: C:Documents and SettingsAdministratorLocal SettingsTemp emp5186.txt Временный файл был создан в каталоге по умолчанию: C:Documents and SettingsAdministratorLocal SettingsTemp emp5187.txt Временный файл был создан в каталоге по умолчанию: C: Документы и настройкиАдминистраторЛокальные настройкиTemp emp5188.txt Временный файл был создан в каталоге по умолчанию: C:Documents and SettingsAdministratorLocal SettingsTemp emp5189.txt Временный файл был создан в каталоге по умолчанию: C:Documents and SettingsAdministratorLocal SettingsTemp emp5190.txt