Как проверить, существует ли папка
Я немного играю с новыми функциями Java 7 IO, на самом деле я пытаюсь получить все xml-файлы в папке. Но это вызывает исключение, когда папка не существует, как я могу проверить, существует ли папка с новым IO?
public UpdateHandler(String release) { log.info("searching for configuration files in folder " + release); Path releaseFolder = Paths.get(release); try(DirectoryStream stream = Files.newDirectoryStream(releaseFolder, "*.xml")){ for (Path entry: stream){ log.info("working on file " + entry.getFileName()); } } catch (IOException e){ log.error("error while retrieving update configuration files " + e.getMessage()); } }
- Как выйти из приложения Java из программы
- Рассчитать количество будних дней между двумя датами в Java
- Не удалось выполнить компиляцию: Тип программы уже присутствует: com.google.android.gms.internal.measurement.zzabn
- Как разобрать JSON из Java HTTPResponse?
- Каково использование System.in.read ()?
- В чем смысл «этого» в Java?
- AlertDialog изнутри BroadcastReceiver ?? Это можно сделать?
- Ошибка CreateProcess = 740. Запрошенная операция требует повышения
- String.replaceAll без RegEx
- Прочитать pdf-файл из папки с данными
- Как остановить Proguard от удаления параметров типа?
- CollapsingToolbarLayout не распознает прокрутку
- Как я могу начать новую активность Android с помощью строки?
Использование java.nio.file.Files
:
Path path = ...; if (Files.exists(path)) { // ... }
Вы можете опционально передать этот метод значения LinkOption
:
if (Files.exists(path, LinkOption.NOFOLLOW_LINKS)) {
Существует также метод notExists
:
if (Files.notExists(path)) {
Довольно просто:
new File("/Path/To/File/or/Directory").exists();
И если вы хотите быть уверенным, что это каталог:
File f = new File("/Path/To/File/or/Directory"); if (f.exists() && f.isDirectory()) { ... }
Чтобы проверить, существует ли каталог с новым IO:
if (Files.isDirectory(Paths.get("directory"))) { ... }
isDirectory
возвращает true
если файл является каталогом; false
если файл не существует, не является каталогом или не может быть определено, является ли файл каталогом или нет.
См. Документацию .
Вам нужно преобразовать свой Путь в File
и проверить наличие:
for(Path entry: stream){ if(entry.toFile().exists()){ log.info("working on file " + entry.getFileName()); } }
Создайте файл из строки каталога вашей папки
String path="Folder directory"; File file = new File(path);
и использование метод есть.
Если вы хотите сгенерировать папку, вы можете использовать mkdir ()
if (!file.exists()) { System.out.print("No Folder"); file.mkdir(); System.out.print("Folder created"); }
Нет необходимости отдельно вызывать метод exists()
, поскольку isDirectory()
неявно проверяет, существует ли каталог или нет.
File sourceLoc=new File("/a/b/c/folderName"); boolean isFolderExisted=false; sourceLoc.exists()==true?sourceLoc.isDirectory()==true?isFolderExisted=true:isFolderExisted=false:isFolderExisted=false;
import java.io.File; import java.nio.file.Paths; public class Test { public static void main(String[] args) { File file = new File("C:\\Temp"); System.out.println("File Folder Exist" + isFileDirectoryExists(file)); System.out.println("Directory Exists" + isDirectoryExists("C:\\Temp")); } public static boolean isFileDirectoryExists(File file) { if (file.exists()) { return true; } return false; } public static boolean isDirectoryExists(String directoryPath) { if (!Paths.get(directoryPath).toFile().isDirectory()) { return false; } return true; } }
Мы можем проверить файлы и удалить папки.
import java.io.*; public class fileCheck { public static void main(String arg[]) { File f = new File("C:/AMD"); if (f.exists() && f.isDirectory()) { System.out.println("Exists"); //if the file is present then it will show the msg } else{ System.out.println("NOT Exists"); //if the file is Not present then it will show the msg } } }