Rechercher dans un fichier dans le .jar

Knux -  
KX Messages postés 19031 Statut Modérateur -
Bonjour,

Je suis en train de coder un mod pour un jeu, mais lors du démmarage de ce dernier, je cherche à lui faire lire et rechercher dans les lignes d'un fichier TXT. Le problème est que je dois utiliser un InputStream et que je ne comprend pas par rapport à File. J'ai déjà posé une question similaire où l'on m'a repondu, mais c'était pour un fichier hors du .jar ...
http://www.commentcamarche.net/forum/affich-25399688-rechercher-dans-un-fichier-en-java

Je cherche à faire la même chose mais dans le .jar
Voici mon code : http://dl.dropbox.com/u/7560728/needhelp.txt
Cela marche très bien pour 'serverName' puisqu'il est situé tout en haut du fichier, mais pour serverIp, il n'arrive pas à le lire...
Merci d'avance, Knux14

A voir également:

1 réponse

KX Messages postés 19031 Statut Modérateur 3 020
 
Tu devrais modifier cette ligne :

InputStreamReader fichier = new InputStreamReader(getClass().getClassLoader().getResourceAsStream("config.txt"));

Par celle-ci :

InputStream fichier = ClassLoader.getSystemResource("config.txt").openStream();

Par contre tu devrais supprimer cette variable globale "fichier" en l'intégrant directement dans ta méthode "getConfig"

public String getConfig(String file)
{
    Scanner sc = new Scanner(ClassLoader.getSystemResource("config.txt").openStream());

    while (sc.hasNextLine())
    {
        String ligne = sc.nextLine();
        
        if(ligne.startsWith(file))
        {
            System.out.println("Read: " + ligne);
            
            sc.close();
            return ligne;
        }
    }
    
    sc.close();
    return file;
}
0