FileInputStream ne fonctionne pas avec le chemin relatif
J'ai essayé de créer un objet à partir de FileInputStream
et passer la valeur relative d'un fichier à son constructeur, mais il ne fonctionne pas correctement et jeta un FileNotFoundException
try {
InputStream is = new FileInputStream("/files/somefile.txt");
} catch (FileNotFoundException ex) {
System.out.println("File not found !");
}
/fichiers n'est pas un chemin d'accès relatif. Voulez-vous dire ./fichiers?
Ce n'est pas un chemin d'accès relatif. C'est un chemin d'accès absolu.
Soit "./fichiers/" ou "fichiers/" devrait fonctionner comme un chemin d'accès relatif.
Il fonctionne correctement, et que le fichier n'est pas trouvé. C'est parce qu'il n'est pas où l'on vous dit qu'il a été. La faute en est à vous, pas FileInputStream.
Ce n'est pas un chemin d'accès relatif. C'est un chemin d'accès absolu.
Soit "./fichiers/" ou "fichiers/" devrait fonctionner comme un chemin d'accès relatif.
Il fonctionne correctement, et que le fichier n'est pas trouvé. C'est parce qu'il n'est pas où l'on vous dit qu'il a été. La faute en est à vous, pas FileInputStream.
OriginalL'auteur Mahmoud Elshamy | 2013-01-27
Vous devez vous connecter pour publier un commentaire.
La
/
au début fera le chemin d'accès absolu au lieu de par rapport.Essayez de supprimer le premier
/
, pour le remplacer:avec:
Si vous rencontrez toujours des problèmes, essayez de s'assurer que le programme est en cours d'exécution à partir de l'endroit où vous pensez en vérifier le répertoire courant:
renommer le fichier
Non, ne fonctionne pas si le fichier est dans le même répertoire que le InputStream exemple de code.
OriginalL'auteur Dukeling
Les autres affiches sont à droite le chemin qui vous donnez n'est pas un chemin d'accès relatif. Vous pourriez faire quelque chose comme
this.getClass().getResourceAsStream("Path relative to the current class")
. Cela vous permettra de charger un fichier sous forme d'un flux basé sur un chemin par rapport à la classe à partir de laquelle vous l'appelez.Voir l'API Java pour plus de détails: http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html#getResourceAsStream(java.lang.Chaîne de caractères)
OriginalL'auteur Michael
InputStream is = new FileInputStream("C:/files/somefile.txt");
windows ne prend pas en charge la
/
symbole en tant que "root"Si vous voulez charger un fichier que vous aurez mis dans votre POT, vous devez utiliser
ou
ok, mais votre chemin n'est pas relative, de sorte que vous devez utiliser un chemin d'accès relatif OU spécifier le chemin absolu de votre dossier
d'accord , pourriez-vous me donner un code pour obtenir le chemin absolu de la finale .fichier jar 🙂
vérifier mon montage, alors laissez-moi savoir si cela fonctionne
OriginalL'auteur BackSlash