Code source java

Bonjour,

je suis débutante en programmation java ,j'ai trouver un code pour ouvrir un fichier texte mais j'ai besoin de lire seulement des lignes de ce fichier comment faire ça?
mon code source est:

package todo;

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Scanner;


public class openfile {
    public static void main(String[] args){
        Scanner scanner = new Scanner(System.in);
        BufferedReader br = null;
        String line;
        
        System.out.println("Please enter the file name to be read");
        
        try{
            br = new BufferedReader(new FileReader("C:\\Users\\Khaoula\\Desktop\\file to read\\" + scanner.next()));
            
        } catch (FileNotFoundException fnfex) {
            System.out.println(fnfex.getMessage() +"the file was not found");
            System.exit(0);
            
        }
        
        try {
            while((line = br.readLine()) !=null)
                System.out.println(line);
        } catch (IOException ioex) {
            System.out.println(ioex.getMessage() + "Error reading file");
        } finally{
            System.exit(0);
        
        
    }
    
}
}

1 réponse

  1. Modérateur
    Bonjour,

    Plus simple :

    import java.io.IOException;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class Test{
        public static void main(String[] args) throws IOException {
            for (String line : Files.readAllLines(Paths.get("C:/test.txt")))
                System.out.println(line);
        }
    }
    1. merci ,mais moi je veut lire seulement une donnée de ce fichier txt pas toutes les données.
    2. Modérateur
      Précises sur quel critère tu voudrais extraire tes données, mais de toute façon pour lire un fichier il n'y a pas de magie, il faut commencer au début et lire ligne par ligne...
    3. mon fichier est CSV et je veux lire le champ avec son valeur seulement par exemple Handover success GSM/GSM son valeur est 13
    4. Modérateur
      Et bien tu lis ligne par ligne (parce que de toute façon tu ne peux pas faire autrement) jusqu'à lire "Handover success GSM/GSM" et tu récupères la valeur 13 qui t'intéresse...