Verification de la présence d'un mot dans un fichier texte

Fermé
aaaaaaa! Messages postés 3 Date d'inscription jeudi 21 avril 2016 Statut Membre Dernière intervention 22 avril 2016 - 21 avril 2016 à 19:32
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 - 21 avril 2016 à 20:45
Bonjour,
Ce code ne marche pas pk stp ?


if( "src\\film\\Description\\_300.txt".contains(" " + "300 soldats spartiates" + " "))
{
System.out.println("il le contient !");
}
else{
System.out.println("Il est égal !");
}

Il est censé m'affiché il le contient et m'affcihe il est égal



A voir également:

1 réponse

KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
21 avril 2016 à 19:39
Bonjour,

À aucun moment tu ne manipules un fichier ici !

Il faudrait commencer par ouvrir le fichier, lire son contenu, et après regarder s'il contient les valeurs que tu veux... pour l'instant t'en es loin !
0
aaaaaaa! Messages postés 3 Date d'inscription jeudi 21 avril 2016 Statut Membre Dernière intervention 22 avril 2016
Modifié par KX le 21/04/2016 à 20:32
et avec çà ?
c'est un sous partie d'une application
en gros mon z représente une adresse d'un fichier
J'arrive bien a afficher mon fichier mais cependant pas a effectuer la recherche afin d'afficher que celle présentant dans la ligne "de".

 public void LireFichier(String z)
    {
try
{
    
    File f = new File (z);
    FileReader fr = new FileReader (f);
    BufferedReader br = new BufferedReader (fr);
 
    try
    {
        String line = br.readLine();
        String toute_les_lignes = "";
       // jTextArea2.setText(line);
        while (line != null)
        {
            line = br.readLine();
            
            if( line.contains("de")){  //recherche de contenance de 
           toute_les_lignes += line+"\n"; //met la ligne dans un deuxième string
           jTextArea2.setText(toute_les_lignes); //affiche mon deuxième string 
            }
            else{
            
            }
        }
 
        br.close();
        fr.close();
    }
    catch (IOException exception)
    {
        System.out.println ("Erreur lors de la lecture : " + exception.getMessage());
    }
}
catch (FileNotFoundException exception)
{
    System.out.println ("Le fichier n'a pas été trouvé");
}
      
   }
0
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
21 avril 2016 à 20:45
C'est compliqué tout ça...

Tu mélanges la lecture du fichier, son filtrage, et l'affichage dans le Swing, ça devrait être des morceaux de code différents.

public static List<String> readFile(String fileName) throws IOException {
    return Files.readAllLines(Paths.get(fileName));
}

public static List<String> retainIfContains(List<String> lines, String required) {
    List<String> retain = new ArrayList<>();
    for (String line : lines)
        if (line.contains(required))
            retain.add(line);
    return retain;
}

public static String merge(List<String> lines) {
    StringBuilder sb = new StringBuilder();
    for (String line : lines)
        sb.append(line).append('\n');
    return sb.toString();
}

List<String> lines = readFile("myFile.txt");
lines = retainIfContains(line, "de");
String text = merge(lines);
jTextArea2.setText(text);
0