Lire fichier txt et extraire des données

Signaler
Messages postés
3
Date d'inscription
samedi 2 décembre 2006
Statut
Membre
Dernière intervention
1 février 2010
-
cs_sousou1987
Messages postés
1
Date d'inscription
lundi 1 février 2010
Statut
Membre
Dernière intervention
1 février 2010
-
Bonjour,

je souhaiterai récupérer une partie d'un texte dans un fichier txt
qui se présente comme ça :
************************************************
Port Status Vlan
Gi1/0/1 connected 1
Gi1/0/2 connected 1
Gi1/0/3 notconnect 1
Gi1/0/4 notconnect 1
Gi1/0/5 notconnect 1
Gi1/0/6 notconnect 1
Gi1/0/7 notconnect 1
Gi1/0/8 notconnect 1
Gi1/0/9 notconnect 1
Gi1/0/10 connected 2
Gi1/0/11 notconnect 1
Gi1/0/12 notconnect 1
Gi1/0/13 notconnect 1
Gi1/0/14 notconnect 3
Gi1/0/15 notconnect 3
Gi1/0/16 notconnect 3
Gi1/0/17 notconnect 1
**************************************************

Après la lecture de fichier, je souhaite afficher des informations comme :

Vlan : x
The total number of ports: 4
The number of connected ports: 2
The number of not connected ports: 2
List of connected ports: Gi1/0/21, Gi1/0/28
List of not connected ports: Gi1/0/20, Gi1/0/27

Quelqu'un a une idée pour ça?
Merci d'avance.

5 réponses

Messages postés
491
Date d'inscription
samedi 20 mai 2006
Statut
Membre
Dernière intervention
15 juillet 2012
9
Après la lecture de fichier, je souhaite afficher des informations comme :
Vlan : x
The total number of ports: 4
The number of connected ports: 2
The number of not connected ports: 2
List of connected ports: Gi1/0/21, Gi1/0/28
List of not connected ports: Gi1/0/20, Gi1/0/27

Quelqu'un a une idée pour ça?

Les données "x", "Gi1/0/21", "Gi1/0/28", "Gi1/0/20" et "Gi1/0/27" sont inconnues dans le fichier.
Messages postés
3
Date d'inscription
samedi 2 décembre 2006
Statut
Membre
Dernière intervention
1 février 2010

Bonjour,

En fait, je souhaite afficher des infos comme :

************
Vlan 1
The total number of ports: 13
The number of connected ports: 2
The number of not connected ports: 11
List of connected ports: Gi1/0/1,Gi1/0/2
List of not connected ports: Gi1/0/2,Gi1/0/3,Gi1/0/4,Gi1/0/5,Gi1/0/6,Gi1/0/7,Gi1/0/8,Gi1/0/9,Gi1/0/11,Gi1/0/12,Gi1/0/13,Gi1/0/17
Messages postés
491
Date d'inscription
samedi 20 mai 2006
Statut
Membre
Dernière intervention
15 juillet 2012
9
Tu lis le fichier ligne par ligne comme ceci:

    BuffererReader reader = new BufferedReader(new     FileReader("filename"));
    String str = null;
    str = reader.readLine();
    while(str != null){
        check(str);
        str = reader.readLine();
    }
    System.out.println("Vlan: " + CtrVlan);
    System.out.println("The total number of ports: " + 
        (list1.size() + list2.size()));
    System.out.println("The number of connected ports: " + 
        list1.size());
    System.out.println("The number of not connected ports: " + 
        list2.size());
    System.out.println("List of connected ports: " + 
        Arrays.toString(list1.toArray()));
    System.out.println("List of not connected ports: " + 
        Arrays.toString(list2.toArray()));


Tu crée la méthode "check(String str)" comme ceci:

private void check(String str){
    if(str.contains("Vlan")){
        ctrVlan++;
    }
    if(str.contains("connect 1")){
        list1.add(str.split(" "))[0];
    }
    if(str.contains("notconnect 1")){
        list2.add(str.split(" "))[0];
    }
}
int ctrVlan;
java.util.List<String> list1 = new ArrayList<String>();
java.util.List<String> list2 = new ArrayList<String>();
Messages postés
3
Date d'inscription
samedi 2 décembre 2006
Statut
Membre
Dernière intervention
1 février 2010

Je suis débutant en Java, j'ai essayé de travaillé sur le code que tu m'a indiqué mais j'ai pas réussi (y a des erreurs par tout).

voici le code :

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.ArrayList;
import java.lang.String.*;
import java.lang.Object.*;

public class CheckInterface {

int ctrVlan;
java.util.List<String> list1 = new ArrayList<String>();
java.util.List<String> list2 = new ArrayList<String>();

private void check(String str){
    if(str.contains("Vlan")){
        ctrVlan++;
    }
    if(str.contains("connect 1")){
        list1.add(str.split(" "))[0]; //cannot find symbol ici
    }
    if(str.contains("notconnect 1")){
        list2.add(str.split(" "))[0]; //cannot find symbol method add(java.lang.String[])
    }
}

/* ******************* */
    
    public static void main(String[] args) {
        try{
            BufferedReader reader = new BufferedReader(new FileReader("fichier.txt"));
        String str = null;

              
            str = reader.readLine();
            while(str != null){
               check(str); //non static methode cannot referenced from static context
                str = reader.readLine();

            System.out.println("Vlan: " + CtrVlan);
            System.out.println("The total number of ports: " +(list1.size() + list2.size()));
            System.out.println("The number of connected ports: " +list1.size());
            System.out.println("The number of not connected ports: " +list2.size());
            System.out.println("List of connected ports: " +Arrays.toString(list1.toArray()));
            System.out.println("List of not connected ports: " +Arrays.toString(list2.toArray()));
                 }
        } catch (FileNotFoundException e)
        {
            e.printStackTrace();
        } catch (IOException e)
        {
            e.printStackTrace();
        } finally
        {
            try
            {
                if (reader != null)
                {
                    reader.close();
                }
            } catch (IOException e)
            {
                e.printStackTrace();
            }
        }
    }
}



Donc tu peux me corriger ça?
Merci infiniment.


bk930
Messages postés
1
Date d'inscription
lundi 1 février 2010
Statut
Membre
Dernière intervention
1 février 2010

hay if you can help me to :
Lire fichier xml et extraire des données with java please and thinck you