J'ai un fichier jar qui utilise des fichiers txt. Afin de les obtenir, il utilise la fonction Class.getResourceAsStream
.getResourceAsStream ne fonctionne pas pour chaque classe?
Class A
{
public InputStream getInputStream(String path) throws Exception {
try {
return new FileInputStream(path);
} catch (FileNotFoundException ex) {
InputStream inputStream = getClass().getResourceAsStream(path);
if (inputStream == null)
throw new Exception("Failed to get input stream for file " + path);
return inputStream;
}
}
}
Ce code fonctionne parfaitement.
Le problème est que, si je définis la classe A comme extends java.io.File
, le InputStream I obtenu à partir de getResourceAsStream
est nul.
En outre, si je laisse la classe A comme classe ordinaire (non héréditaire), et définir la classe B comme suit:
Class B extends java.io.File
{
public InputStream getInputStream(String path) throws Exception
{
return new A().getInputStream(path);
}
}
le InputStream retourné est toujours nul.
Quel est le problème? Est-il un moyen d'accéder au fichier de la classe qui hérite File
?
Merci,
Vous avez raison. Le problème était différent. Vois ma réponse. Merci! – Dikla