vérifier si le fichier existe dans un répertoire spécifique
Je suis en train de rechercher un fichier spécifique dans un répertoire donné. Je ne veux pas le code mais je tiens à corriger celui que j'ai. La seule différence dans cette question, c'est que je regarde les fichiers avec une extension .MOD
.
J'ai le code de prêts:-
public static int checkExists(String directory, String file) {
File dir = new File(directory);
File[] dir_contents = dir.listFiles();
String temp = file + ".MOD";
boolean check = new File(temp).exists();
System.out.println("Check"+check); //-->always says false
for(int i = 0; i<dir_contents.length;i++) {
if(dir_contents[i].getName() == (file + ".MOD"))
return Constants.FILE_EXISTS;
}
return Constants.FILE_DOES_NOT_EXIST;
}
Mais pour certaines raisons, il ne fonctionne pas. Je ne comprends pas pourquoi, quelqu'un peut-il trouver un bug ici?
avez-vous déjà imprimé le tmp de la valeur et de vérifier si le fichier existe vraiment? Et si oui, lequel env est ce (windows ou linux) sous linux, les fichiers sont sensibles à la casse...
oui j'ai essayé l'impression que la température de la valeur et que le fichier existe bel et bien dans le répertoire. C'est l'OS de windows, mais le
oui j'ai essayé l'impression que la température de la valeur et que le fichier existe bel et bien dans le répertoire. C'est l'OS de windows, mais le
file
paramètre et le nom réel du fichier dans le répertoire cas avec délicatesse même.OriginalL'auteur gkris | 2012-06-27
Vous devez vous connecter pour publier un commentaire.
Ne vous attendez temp.MOD fichier dans le répertoire courant (répertoire à partir duquel vous exécutez votre application), ou vous voulez qu'il soit dans le "répertoire" dossier? Dans ce dernier cas, essayez de créer le fichier de cette façon:
Également vérifier les autorisations de fichier, parce qu'il va échouer sur les erreurs d'autorisation. Cas sensitivily pourrait aussi en être la cause du problème, car Spaeth mentionné.
Heureux que ça a aidé.
OriginalL'auteur n0rm1e
C'est là que vous avez le bug.
Et
Le code
boolean check = new File(temp).exists();
va rechercher le fichier dans le répertoire courant, pas dans le répertoire requis.et vous devez les utiliser .equals() dans la boucle for
pour la boucle est juste une autre méthode de vérification de la même existence du fichier. J'ai eu 2 méthodes pour vérifier la même fonction, car aucun n'a été en travail. Maintenant, je peux supprimer en toute sécurité l'ensemble de la boucle for. Merci encore.
OriginalL'auteur Akhil Dev
Essayer cette..............
Bien que ce que je veux dire en chemin...ok le nouveau Fichier("./nom_fichier"); "." (dot), l'opérateur désigne le répertoire courant
oui. Je NE veux pas vérifier le répertoire courant.
Puis il suffit de donner le chemin d'accès du fichier qui est nécessaire
oui c'est ce que je faisais mal.
OriginalL'auteur Kumar Vivek Mitra
Accéder à l'URL ci-dessous pour plus de détails:
https://automationprofessional.wordpress.com/2016/05/29/java-code-to-check-if-file-exists-or-not/
OU
Essayer ce CODE JAVA:
Ce n'est pas seulement de vérifier si le fichier existe mais même vérifier si c'est un fichier lui-même ou pas. Et, aussi, j'ai ajouté l'ensemble de la classe qui pourrait être utile pour d'autres personnes à utiliser.
OriginalL'auteur Deepak Verma