Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Un fichier dans un jar rapporté comme inexistant

1 réponse
Avatar
Vincent Hiribarren
Bonjour,

j'ai un problème assez étrange.

J'ai un fichier fichier.xml dans un jar. Il est dans le même package
mon.package que la classe MaClasse.class, aussi contenu dans le jar.

Pour récupérer le fichier, je fait un

File file = new File(
MaClasse.class.getResource("fichier.xml").getFile()
);

Cependant :

- un file.exists() me renvoie false alors que le fichier est là
- si je fais un file.exists() sur MaClasse.class, il me renvoie true
- mon fichier fichier.xml est pourtant bien considéré comme existant,
car de toute manière si je fais ce test sur un fichier inexistant, je
n'ai ni false ni true, mais une exception au niveau de getResource().
- mon fichier fichier.xml est rapporté comme n'existant pas, mais un
Class.getResourceAsStream() marche bien et me renvie un flux direct vers
le contenu du fichier.

Que se passe-t-il ? De manière générale, quels sont les moyens faciles
pour manipuler des fichiers dans un jar comme s'ils n'étaient pas dans
un jar ? J'utilisais déjà Class.getResource() pour accéder à des
fichiers gif empaquetés dans un jar, et je n'ai jamais eu ce genre de
problème. Merci pour vos réponses.

1 réponse

Avatar
Stéphane Delpech
"Vincent Hiribarren" a écrit dans le message de news:

Bonjour,

j'ai un problème assez étrange.

J'ai un fichier fichier.xml dans un jar. Il est dans le même package
mon.package que la classe MaClasse.class, aussi contenu dans le jar.

Pour récupérer le fichier, je fait un

File file = new File(
MaClasse.class.getResource("fichier.xml").getFile()
);



Bonjour,

Y at-il un chemin ? Si oui essaye :

File file = new File(
MaClasse.class.getResource("MonCheminfichier.xml").getFile() );

@+ Stéphane