Je le fais fonctionner sans aucune référence à "class" ou "ClassLoader".
Disons que nous avons trois scénarios avec l'emplacement du fichier 'example.file' et votre répertoire de travail (où votre application s'exécute) est home / mydocuments / program / projects / myapp:
a) Un sous-dossier descendant vers le répertoire de travail: myapp / res / files / example.file
b) Un sous-dossier non descendant vers le répertoire de travail: projets / fichiers / exemple.fichier
b2) Un autre sous-dossier non descendant du répertoire de travail: programme / fichiers / exemple.fichier
c) Un dossier racine: home / mydocuments / files / example.file (Linux; sous Windows remplacez home / par C :)
1) Obtenez le bon chemin: a) String path = "res/files/example.file";
b) String path = "../projects/files/example.file"
b2) String path = "../../program/files/example.file"
c)String path = "/home/mydocuments/files/example.file"
Fondamentalement, s'il s'agit d'un dossier racine, démarrez le nom du chemin avec une barre oblique. S'il s'agit d'un sous-dossier, aucune barre oblique ne doit précéder le nom du chemin. Si le sous-dossier n'est pas descendant vers le répertoire de travail, vous devez y accéder en utilisant "../". Cela indique au système de remonter d'un dossier.
2) Créez un objet File en passant le bon chemin:
File file = new File(path);
3) Vous êtes maintenant prêt à partir:
BufferedReader br = new BufferedReader(new FileReader(file));