J'ai besoin d'une méthode valide pour vérifier si un String
représente un chemin pour un fichier ou un répertoire. Quels sont les noms de répertoire valides dans Android ? Il s'avère que les noms de dossiers peuvent contenir '.'
alors comment le système peut-il comprendre s'il s'agit d'un fichier ou d'un dossier ?
Réponses
Trop de publicités?En supposant que path
est votre String
.
File file = new File(path);
boolean exists = file.exists(); // Check if the file exists
boolean isDirectory = file.isDirectory(); // Check if it's a directory
boolean isFile = file.isFile(); // Check if it's a regular file
Voir File
Javadoc
Ou vous pouvez utiliser la classe NIO Files
et vérifier des choses comme ça :
Path file = new File(path).toPath();
boolean exists = Files.exists(file); // Check if the file exists
boolean isDirectory = Files.isDirectory(file); // Check if it's a directory
boolean isFile = Files.isRegularFile(file); // Check if it's a regular file
pgsandstrom
Points
5085
Sheng
Points
1103
Emdadul Sawon
Points
2362
Il n'y a aucun moyen pour le système de vous dire si une String
représentent un file
ou directory
si elle n'existe pas dans le système de fichiers. Par exemple :
Path path = Paths.get("/some/path/to/dir");
System.out.println(Files.isDirectory(path)); // return false
System.out.println(Files.isRegularFile(path)); // return false
Et pour l'exemple suivant :
Path path = Paths.get("/some/path/to/dir/file.txt");
System.out.println(Files.isDirectory(path)); //return false
System.out.println(Files.isRegularFile(path)); // return false
Nous voyons donc que dans les deux cas, le système renvoie false. Ceci est vrai pour les deux java.io.File
y java.nio.file.Path
Kumar Vivek Mitra
Points
19369
- Réponses précédentes
- Plus de réponses