comment puis-je obtenir de nom de fichier et chemin d'accès en java?
J'ai un fichier zip dans un répertoire qui son nom dynamicaly changements.
lorsque je clique sur un bouton, je devrais être en mesure d'obtenir le chemin complet de ce fichier ainsi que le nom comme suit: U:\home\ash\dfi\dfiZipedFile\dfi.zip
public static String getFileFullName(BcfiDownloadPanel bcfiDownloadPanel) {
File dir = new File("U:\\home\\ash\\dfi\\dfiZipedFile");
String[] filesList = dir.list();
if (filesList == null) {
//Either dir does not exist or is not a directory
} else {
for (int i = 0; i < filesList.length; i++) {
//Get filename of file or directory
String filename = filesList[i];
}
}
String fileFullName = filesList[0];
return fileFullName;
}
Est-il seulement jamais un ZIP dans le répertoire? Comment est-ce que vous connaissez le répertoire, mais pas le nom de fichier? Comment est-ce que le code de la compilation?
OriginalL'auteur itro | 2012-02-16
Vous devez vous connecter pour publier un commentaire.
Vrai pour le deuxième point. Sur la première, ça dépend si la classe est destinée à être utilisée dans une bibliothèque publique ou pas. Cependant, dans le doute, vous avez raison, je vais modifier la réponse.
OriginalL'auteur Aurélien Ribon
Quelque chose comme
retourne le chemin complet du premier fichier dans le répertoire.
File dir = new File("U:\\home\\ash\\dfi\\dfiZipedFile");
Si il n'y a plus de fichier avec d'autres extinction. Comment puis-je refusé une autre extension?
Vous pouvez utiliser un FilenameFilter dans listFiles ou tester le chemin du fichier avec chemin d'accès.toLowerCase().endsWith(".zip")
Je pense que le Fichier("U:/home/ash/dfi/dfiZipedFile") fonctionne très bien. Quel est le problème avec cela. Je ne sais pas si le Fichier("U:\\home\\ash\\dfi\\dfiZipedFile") fonctionne sur des machines Unix.
OriginalL'auteur ZehnVon12
Je serais stupéfait si ce code va fonctionner.
vous devez remplacer le
\
avec\\
dans le nom de fichier.Cela devrait être un commentaire sur la question d'origine.
L'objectif est de l'aider. Ma réponse va faire son code de la compilation de sorte qu'il est "partie" de la réponse et pas un pur commentaire. Donc, à la fois de travail, soit un commentaire ou une réponse. Honnêtement, je suis allé pour une réponse parce que upvoted les commentaires ne vous donnera pas de points ..
OriginalL'auteur Adel Boutros