IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Entrée/Sortie Java Discussion :

Récupérer des données d'un fichier texte


Sujet :

Entrée/Sortie Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juillet 2009
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 50
    Points : 31
    Points
    31
    Par défaut Récupérer des données d'un fichier texte
    Bonjour tout le monde .
    je dispose d 'un fichier texte lourd (200 lignes) dont je veux extraire les info qui m'intéressent .Je m'explique en donnant un exemple.
    Le fichier contient les données suivantes :
    Nom: xxxx xxxx
    Age : 29 ans
    Profession : Prof
    Email : prof@prof.fr
    Tél : 01111111111

    Le but du code est d'extraire uniquement le numero de tél (par exemple ).
    Pourrier vous m'aider svp ?
    J'ai cherché partout et je n 'ai trouvé que des methode qui retourne un String passé en argument .
    Merci

  2. #2
    Membre averti
    Avatar de l4r3nZu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2010
    Messages : 154
    Points : 423
    Points
    423
    Par défaut
    Bonjour,

    Ceci pourrais t'aider :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    String chaine="";
    		String fichier ="fichiertexte.txt";
     
    		//lecture du fichier texte	
    		try{
    			InputStream ips=new FileInputStream(fichier); 
    			InputStreamReader ipsr=new InputStreamReader(ips);
    			BufferedReader br=new BufferedReader(ipsr);
    			String ligne;
    			while ((ligne=br.readLine())!=null){
    				if (ligne.contains("nom :"))
    				{
    					String[] st = ligne.split(ligne, ':');
    					System.out.println("Nom = "+st[1]);
    				}
    				chaine+=ligne+"\n";
    			}
    			br.close(); 
    		}		
    		catch (Exception e){
    			System.out.println(e.toString());
    		}

  3. #3
    Membre averti
    Avatar de l4r3nZu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2010
    Messages : 154
    Points : 423
    Points
    423
    Par défaut
    Rajoute un petit Boolean quand tu arrive sur nom =true et =false quand tu rencontre tel pour ton périmetre

  4. #4
    Nouveau membre du Club
    Inscrit en
    Juillet 2009
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 50
    Points : 31
    Points
    31
    Par défaut
    Merci de ta réponse mais j'ai compilé ça n'a rien donné .
    Je ne vois pas dans ton code aucune déclaration d'objet File pour traiter le fichier text ni le chemin vers ce fichier
    Merci de ton aide

  5. #5
    Membre averti
    Avatar de l4r3nZu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2010
    Messages : 154
    Points : 423
    Points
    423
    Par défaut
    Bizaree ... j'ai , tu n'as pas a declarer de File ; pour lire un fichier ca correspond a ces lignes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    InputStream ips=new FileInputStream(fichier); 
    InputStreamReader ipsr=new InputStreamReader(ips);
    BufferedReader br=new BufferedReader(ipsr);
    En adaptant biensur cet exemple avec ton chemin de fichier dans la variable String fichier

    Hésite pas si tu rencontre des difficultés !
    bon courage !

  6. #6
    Nouveau membre du Club
    Inscrit en
    Juillet 2009
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 50
    Points : 31
    Points
    31
    Par défaut
    Bonjour.
    Bon j'ai fait comme vous avez dit voici le code entier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     import java.io.*;
     
     
    public class MAinoff {
     
    	/**
             * @param args
             */
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
     
    		String chaine="";
    				String fichier ="C:\\users\\rachid\\Desktop\\q.txt";
     
    				//lecture du fichier texte	
    				try{
    					InputStream ips=new FileInputStream(fichier); 
    					InputStreamReader ipsr=new InputStreamReader(ips);
    					BufferedReader br=new BufferedReader(ipsr);
    					String ligne;
    					while ((ligne=br.readLine())!=null){
    						if (ligne.contains("nom :"))
    						{
    							String[] st = ligne.split(ligne, ':');
    							System.out.println("Nom = "+st[1]);
    						}
    						chaine+=ligne+"\n";
    					}
    					br.close(); 
    				}		
    				catch (Exception e){
    					System.out.println(e.toString());
    				}
    	}
     
    }
    La console n'affiche rien .C'est ou le problème ?

  7. #7
    Membre habitué Avatar de snay13
    Homme Profil pro
    Inscrit en
    Juin 2009
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2009
    Messages : 236
    Points : 166
    Points
    166
    Par défaut
    salut

    C'est peut être lié à un problème de majuscule et de minuscule entre "nom :" et "Nom :"

  8. #8
    Nouveau membre du Club
    Inscrit en
    Juillet 2009
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 50
    Points : 31
    Points
    31
    Par défaut
    Euh Non j'ai essayé et ça ne marche pas toujours ..

  9. #9
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 19
    Points : 11
    Points
    11
    Par défaut
    voici un code qui marche chez moi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileReader;
     
    /**
     *
     * @author Laurent
     */
    public class readFile {
        public static void main(String[] args) {
            readFile("/home/laurent/Bureau/myfile.txt");
        }
     
        public static void readFile(String pathToFile){
            try {
                BufferedReader reader = new BufferedReader(new FileReader(new File(pathToFile)));
                String ligne;
                while((ligne = reader.readLine()) != null){
                    if(ligne.startsWith("Tel :")){
                        System.out.println(ligne);
                    }
                }
            } catch (Exception ex){
                System.err.println("Error. "+ex.getMessage());
            }
        }
    }
    j'ai pris le chemin vers le fichier de données comme étant un chemin absolu, mais tu peux facilement déclarer un chemin relatif en déclarant readFile("myfile.txt") sachant que le fichier "myfile.txt" devrait dans ce cas là etre dans le répertoire où il y a la classe readFile.
    Bon courage

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2013] Récupérer des données dans un fichier text rangé en colonne et les exporter dans excel
    Par kikimarabou dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 20/04/2015, 13h08
  2. Récupérer des données dans un fichiers texte
    Par pitizone dans le forum Word
    Réponses: 1
    Dernier message: 10/04/2014, 15h49
  3. Récupérer des données dans un fichier texte a part.
    Par morora69 dans le forum Général JavaScript
    Réponses: 40
    Dernier message: 17/06/2010, 09h54
  4. Récupérer des données d'un fichier texte
    Par tiantian dans le forum Langage
    Réponses: 4
    Dernier message: 11/07/2007, 11h45
  5. Réponses: 2
    Dernier message: 16/01/2006, 19h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo