Comment afficher hashtable.

rtjhlk Messages postés 43 Date d'inscription jeudi 26 février 2009 Statut Membre Dernière intervention 28 août 2009 - 26 févr. 2009 à 20:59
rtjhlk Messages postés 43 Date d'inscription jeudi 26 février 2009 Statut Membre Dernière intervention 28 août 2009 - 2 mars 2009 à 14:59
bonjour,je veux lire un fichier en java j'ai utiliser hashtable mais je ne sais pas comment faire pour afficher le contenu de hashtable.
merci

19 réponses

amundain Messages postés 110 Date d'inscription mercredi 28 mars 2007 Statut Membre Dernière intervention 28 août 2012 1
27 févr. 2009 à 10:09
Salut,

Ca devrai marcher avec un truc du genre :

Hashtable table=

new Hashtable();table.put(

"key1",
"val1");

Set keySet =table.keySet();

Iterator it= keySet.iterator();

while (it.hasNext()){Object key =it.next();

System.

out .println(
"clé : "+(String)key+
" - valeur : "+ table.get(key));}

A +,

amundain

<hr width ="100%" size="2" />Java bien,merci.
0
rtjhlk Messages postés 43 Date d'inscription jeudi 26 février 2009 Statut Membre Dernière intervention 28 août 2009
27 févr. 2009 à 13:00
mercie beaucoup.
car j'ai mis ça mais ça marche pas


for i(nt i= 0,i<hashtable.count;i++)
system.println("hashtable.tostring) c'est pour lire un fichier des stations parisienes et quand je compile il me donnne ça:



Hello3



Toutes les coordonnes sont enregistrer dans Hashtable



et mon code c'est celui la pour lire un fichier des sations parisiene j'ai mis  le code suivant:



import java.io.BufferedReader;





import





java.io.DataInputStream;




import





java.io.FileInputStream;




import





java.io.IOException;




import





java.io.InputStreamReader;




import





java.util.ArrayList;




import





java.util.Hashtable;

 





public










class


Lignes {




public







static







void


ajouterLignes()



throws


NumberFormatException, IOException{

Hashtable<String,ArrayList<String>> listeDesLignes =




new


Hashtable<String,ArrayList<String>>();BufferedReader reader;



//conversion d'octets fichier endecaractères


FileInputStream ips =






new


FileInputStream(


"paris_metro.graph"

);



// d'un filtreliremanièrepratiquecaractères


DataInputStream ipsr=






new


DataInputStream(ips);



// Lecture flux codé UTF8 enles accent language Français


InputStreamReader str =






new


InputStreamReader(ipsr,


"UTF8"

);



// type defiltredemettredonnéesdustrdanstampon


BufferedReader br =






new


BufferedReader(str);

String sline;




while


((sline=br.readLine())!=



null


){

String NomLigne =



""

;String NumeroLigne =



""

;ArrayList<String> lesStation =




new


ArrayList<String>();




if


(sline.equals(


""

)){listeDesLignes.put(NomLigne, lesStation);

}




if


(sline.equals(


""

)!=



true


){




if


(sline.substring(0,4).equals(


"####"

)){

NumeroLigne = sline.substring(sline.indexOf(



" "

)+1, sline.indexOf(


":"

));NomLigne = sline.substring(sline.indexOf(



":"

)+1);}




else







if


(sline.substring(0,sline.indexOf(


":"

)).equals(NumeroLigne)){

lesStation.add(sline.substring(sline.indexOf(



":"

)+1));

}

}

}

ipsr.close();

System.




out


.println(


"Toutes les coordonnes sont enregistrer dans Hashtable"

);}




public







static







void


main(String[] args)



throws


NumberFormatException, IOException{

System.




out


.println(


"Hello3"

);ajouterLignes();

}

}
0
rtjhlk Messages postés 43 Date d'inscription jeudi 26 février 2009 Statut Membre Dernière intervention 28 août 2009
27 févr. 2009 à 13:18
il met une erreur sur les deux lignes sans avoir une suggestion sur le it:
while (it.hasNext()){
Object key=it.next();
0
amundain Messages postés 110 Date d'inscription mercredi 28 mars 2007 Statut Membre Dernière intervention 28 août 2012 1
27 févr. 2009 à 13:38
tu as bien ajouté l'import :

import

java.util.Iterator;
?

<hr width="100%" size="2" />Java bien,merci.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
amundain Messages postés 110 Date d'inscription mercredi 28 mars 2007 Statut Membre Dernière intervention 28 août 2012 1
27 févr. 2009 à 13:42
Pour info, le code complet...

import java.util.Hashtable;
import java.util.Iterator;
import java.util.Set;

public class Test {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Raccord de méthode auto-généré
        Hashtable table=new Hashtable();
        table.put("1", "val1");
       
        Set keySet=table.keySet();
        Iterator it=keySet.iterator();

        while (it.hasNext()){
        Object key=it.next();
        System.out.println("clé : "+(String)key+" - valeur : "+ table.get(key));
        }
       
    }

}

Java bien,merci.
0
rtjhlk Messages postés 43 Date d'inscription jeudi 26 février 2009 Statut Membre Dernière intervention 28 août 2009
27 févr. 2009 à 13:49
d'abord mercie beaucoup ,oui j'ai rajouté  java.util.Iterator
quand je compile c'est ça le resultat mais je ne sais pas si c'est bon ou pas car il marque tjs que les cooordonnés sont enregistrés dans hashtable  mais je veux qd je debug qu'il m'affiche toutes ces coordonnées:

Hello3

clé : key1 - valeur : val1

Toutes les coordonnes sont enregistrer dans Hashtable.
ilham
0
rtjhlk Messages postés 43 Date d'inscription jeudi 26 février 2009 Statut Membre Dernière intervention 28 août 2009
27 févr. 2009 à 13:58
je vous remercie
le resultat c'est ça,est ce que c'est bon?

Hello3
clé : key1 - valeur : val1

Toutes les coordonnes sont enregistrer dans Hashtable.
0
amundain Messages postés 110 Date d'inscription mercredi 28 mars 2007 Statut Membre Dernière intervention 28 août 2012 1
27 févr. 2009 à 14:08
Bon, j'ai intégré cette vérif des résultats dans ton code, à la fin de ta méthode ajouterLignes();, et j'ai corrigé quelques petites choses...

Quelques remarques :
- les noms de variables commencent toujours par une minuscule, c'est la convention de nommage Java
- tu déclarais deux variables pour ton BufferedReader alors que tu n'en utilises qu'une au final
- on ne teste pas la nullité d'une chaine avec chaine.equals("")!=true mais avec !chaine.equals("")

J'espère que ça te sera utile pour la suite...
Je n'ai pas testé mes modifs car je n'ai pas ton fichier d'entrée, mais essaie avec le code suivant :

A +,

amundain

import java.io.BufferedReader;

import java.io.DataInputStream;

import java.io.FileInputStream;

import java.io.IOException;

import java.io.InputStreamReader;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Set;

import java.util.Hashtable;

public class Lignes {

    public static void ajouterLignes() throws NumberFormatException, IOException

    {

        Hashtable<String, ArrayList<String>> listeDesLignes = new Hashtable<String, ArrayList<String>>();

        // conversion d'octets dufichier GEO enfluxdecaractères

        FileInputStream ips = new FileInputStream("paris_metro.graph");

        // Ajout d'un filtre pour liredemanière plus pratiquelescaractères

        DataInputStream ipsr = new DataInputStream(ips);

        // Lecture dufluxcodéen UTF8 en ISO-8859-1 ideal pour les accent du language Français

        InputStreamReader str = new InputStreamReader(ipsr, "UTF8");

        // Ce type defiltrepermetdemettrelesdonnéesdufluxstrdansuntampon

        BufferedReader br = new BufferedReader(str);

        String sline;

        while ((sline = br.readLine()) != null)

        {

            String nomLigne = "";

            String numeroLigne = "";

            ArrayList<String> lesStations = new ArrayList<String>();

            if (!sline.equals("")) {

                if (sline.substring(0, 4).equals("####")) {

                    numeroLigne = sline.substring(sline.indexOf(" ") + 1, sline.indexOf(":"));

                    nomLigne = sline.substring(sline.indexOf(":") + 1);
                }

                else if (sline.substring(0, sline.indexOf(":")).equals(numeroLigne)) {

                    lesStations.add(sline.substring(sline.indexOf(":") + 1));

                }

                listeDesLignes.put(nomLigne, lesStations);

            }

        }

        ipsr.close();

        System.out.println("Toutes les coordonnes sont enregistrer dans Hashtable");

        // Sortie console des infos mises dans la hashtable
        System.out.println("Vérification des infos enregistrées : ");

        // récupération des clés de la hashtable
        Set keySet = listeDesLignes.keySet();

        // Création d'un iterateur sur ces clés pour le parcours
        Iterator it = keySet.iterator();

        // Parcours des enregistrements
        while (it.hasNext()) {
            // Récupération + sortie console de la clé
            String key = (String) it.next();
            System.out.println("-----> NOM DE LIGNE : " + key);
           
            // Récupération des valeurs sous forme de List
            List listeStations = listeDesLignes.get(key);
           
            // Parcours de la liste
            for (int i = 0; i < listeStations.size(); i++) {
                System.out.println(listeStations.get(i));
            }
            System.out.println("-----> FIN DE RECUPERATION DE LA LIGNE : " + key);

        }

    }

    public static void main(String[] args) throws NumberFormatException, IOException

    {

        System.out.println("Hello3");

        ajouterLignes();

    }

}

Java bien,merci.
0
rtjhlk Messages postés 43 Date d'inscription jeudi 26 février 2009 Statut Membre Dernière intervention 28 août 2009
27 févr. 2009 à 14:24
le fichier paris metro graphe c'est celui là:
#### 1-a:La Défense -- Château de Vincennes

1-a:La Défense

1-a:Esplanade de la Défense

1-a:Pont de Neuilly

1-a:Les Sablons

1-a:Porte Maillot

1-a:Argentine

1-a:Charles de Gaulle - Étoile

1-a:George V

1-a:Franklin D. Roosevelt

1-a:Champs-Élysées - Clémenceau

1-a:Concorde

1-a:Tuileries

1-a:Palais Royal - Musée du Louvre

1-a:Louvre - Rivoli

1-a:Châtelet

1-a:HÃŽtel de Ville

1-a:Saint-Paul

1-a:Bastille

1-a:Gare de Lyon

1-a:Reuilly - Diderot

1-a:Nation

1-a:Porte de Vincennes

1-a:Saint-Mandé

1-a:Bérault

1-a:Château de Vincennes

#### 1-b:Château de Vincennes -- La Défense

1-b:Château de Vincennes

1-b:Bérault

1-b:Saint-Mandé

1-b:Porte de Vincennes

1-b:Nation

1-b:Reuilly - Diderot

1-b:Gare de Lyon

1-b:Bastille

1-b:Saint-Paul

1-b:HÃŽtel de Ville

1-b:Châtelet

1-b:Louvre - Rivoli

1-b:Palais Royal - Musée du Louvre

1-b:Tuileries

1-b:Concorde

1-b:Champs-Élysées - Clémenceau

1-b:Franklin D. Roosevelt

1-b:George V

1-b:Charles de Gaulle - Étoile

1-b:Argentine

1-b:Porte Maillot

1-b:Les Sablons

1-b:Pont de Neuilly

1-b:Esplanade de la Défense

1-b:La Défense

#### 2-a:Porte Dauphine -- Etoile -- Nation

2-a:Porte Dauphine

2-a:Victor Hugo

2-a:Charles de Gaulle - Étoile

2-a:Ternes

2-a:Courcelles

2-a:Monceau

2-a:Villiers

2-a:Rome

2-a:Place de Clichy

2-a:Blanche

2-a:Pigalle

2-a:Anvers

2-a:BarbÚs - Rochechouart

2-a:La Chapelle

2-a:Stalingrad

2-a:JaurÚs

2-a:Colonel Fabien

2-a:Belleville

2-a:Couronnes

2-a:Ménilmontant

2-a:PÚre Lachaise

2-a:Philippe Auguste

2-a:Alexandre Dumas

2-a:Avron

2-a:Nation

#### 2-b:Nation -- Etoile -- Porte Dauphine

2-b:Nation

2-b:Avron

2-b:Alexandre Dumas

2-b:Philippe Auguste

2-b:PÚre Lachaise

2-b:Ménilmontant

2-b:Couronnes

2-b:Belleville

2-b:Colonel Fabien

2-b:JaurÚs

2-b:Stalingrad

2-b:La Chapelle

2-b:BarbÚs - Rochechouart

2-b:Anvers

2-b:Pigalle

2-b:Blanche

2-b:Place de Clichy

2-b:Rome

2-b:Villiers

2-b:Monceau

2-b:Courcelles

2-b:Ternes

2-b:Charles de Gaulle - Étoile

2-b:Victor Hugo

2-b:Porte Dauphine

#### 3-a:Pont de Levallois -- Gallieni

3-a:Pont de Levallois - Bécon

3-a:Anatole France

3-a:Louise Michel

3-a:Porte de Champerret

3-a:Pereire

3-a:Wagram

3-a:Malesherbes

3-a:Villiers

3-a:Europe

3-a:Saint-Lazare

3-a:Havre - Caumartin

3-a:Opéra

3-a:Quatre-Septembre

3-a:Bourse

3-a:Sentier

3-a:Réaumur - Sébastopol

3-a:Arts et Métiers

3-a:Temple

3-a:République

3-a:Parmentier

3-a:Rue Saint-Maur

3-a:PÚre Lachaise

3-a:Gambetta

3-a:Porte de Bagnolet

3-a:Gallieni

#### 3-b:Gallieni -- Pont de Levallois

3-b:Gallieni

3-b:Porte de Bagnolet

3-b:Gambetta

3-b:PÚre Lachaise

3-b:Rue Saint-Maur

3-b:Parmentier

3-b:République

3-b:Temple

3-b:Arts et Métiers

3-b:Réaumur - Sébastopol

3-b:Sentier

3-b:Bourse

3-b:Quatre-Septembre

3-b:Opéra

3-b:Havre - Caumartin

3-b:Saint-Lazare

3-b:Europe

3-b:Villiers

3-b:Malesherbes

3-b:Wagram

3-b:Pereire

3-b:Porte de Champerret

3-b:Louise Michel

3-b:Anatole France

3-b:Pont de Levallois - Bécon

#### 3b-c:Gambetta -- Porte des Lilas

3b-c:Gambetta

3b-c:Pelleport

3b-c:Saint-Fargeau

3b-c:Porte des Lilas

#### 3-d:Porte des Lilas -- Gambetta

3b-d:Porte des Lilas

3b-d:Saint-Fargeau

3b-d:Pelleport

3b-d:Gambetta

#### 4-a:Porte de Clignancourt -- Porte d'Orléans

4-a:Porte de Clignancourt

4-a:Simplon

4-a:Marcadet - Poissonniers

4-a:Château Rouge

4-a:BarbÚs - Rochechouart

4-a:Gare du Nord

4-a:Gare de l'Est

4-a:Château d'Eau

4-a:Strasbourg - Saint-Denis

4-a:Réaumur - Sébastopol

4-a:Étienne Marcel

4-a:Les Halles

4-a:Châtelet

4-a:Cité

4-a:Saint-Michel

4-a:Odéon

4-a:Saint-Germain-des-Prés

4-a:Saint-Sulpice

4-a:Saint-Placide

4-a:Montparnasse - BienvenÃŒe

4-a:Vavin

4-a:Raspail

4-a:Denfert-Rochereau

4-a:Mouton-Duvernet

4-a:Alésia

4-a:Porte d'Orléans

#### 4-b:Porte d'Orléans -- Porte de Clignancourt

4-b:Porte d'Orléans

4-b:Alésia

4-b:Mouton-Duvernet

4-b:Denfert-Rochereau

4-b:Raspail

4-b:Vavin

4-b:Montparnasse - BienvenÃŒe

4-b:Saint-Placide

4-b:Saint-Sulpice

4-b:Saint-Germain-des-Prés

4-b:Odéon

4-b:Saint-Michel

4-b:Cité

4-b:Châtelet

4-b:Les Halles

4-b:Étienne Marcel

4-b:Réaumur - Sébastopol

4-b:Strasbourg - Saint-Denis

4-b:Château d'Eau

4-b:Gare de l'Est

4-b:Gare du Nord

4-b:BarbÚs - Rochechouart

4-b:Château Rouge

4-b:Marcadet - Poissonniers

4-b:Simplon

4-b:Porte de Clignancourt

#### 5-a:Bobigny -- Place d'Italie

5-a:Bobigny - Pablo Picasso

5-a:Bobigny - Pantin - Raymond Queneau

5-a:Église de Pantin

5-a:Hoche

5-a:Porte de Pantin

5-a:Ourcq

5-a:LaumiÚre

5-a:JaurÚs

5-a:Stalingrad

5-a:Gare du Nord

5-a:Gare de l'Est

5-a:Jacques Bonsergent

5-a:République

5-a:Oberkampf

5-a:Richard-Lenoir

5-a:Bréguet - Sabin

5-a:Bastille

5-a:Quai de la Rapée

5-a:Gare d'Austerlitz

5-a:Saint-Marcel

5-a:Campo-Formio

5-a:Place d'Italie

#### 5-b:Place d'Italie -- Bobigny

5-b:Place d'Italie

5-b:Campo-Formio

5-b:Saint-Marcel

5-b:Gare d'Austerlitz

5-b:Quai de la Rapée

5-b:Bastille

5-b:Bréguet - Sabin

5-b:Richard-Lenoir

5-b:Oberkampf

5-b:République

5-b:Jacques Bonsergent

5-b:Gare de l'Est

5-b:Gare du Nord

5-b:Stalingrad

5-b:JaurÚs

5-b:LaumiÚre

5-b:Ourcq

5-b:Porte de Pantin

5-b:Hoche

5-b:Église de Pantin

5-b:Bobigny - Pantin - Raymond Queneau

5-b:Bobigny - Pablo Picasso

#### 6-a:Etoile -- Nation

6-a:Charles de Gaulle - Étoile

6-a:Kléber

6-a:BoissiÚre

6-a:Trocadéro

6-a:Passy

6-a:Bir-Hakeim

6-a:Dupleix

6-a:La Motte-Picquet - Grenelle

6-a:Cambronne

6-a:SÚvres - Lecourbe

6-a:Pasteur

6-a:Montparnasse - BienvenÃŒe

6-a:Edgar Quinet

6-a:Raspail

6-a:Denfert-Rochereau

6-a:Saint-Jacques

6-a:GlaciÚre

6-a:Corvisart

6-a:Place d'Italie

6-a:Nationale

6-a:Chevaleret

6-a:Quai de la Gare

6-a:Bercy

6-a:Dugommier

6-a:Daumesnil

6-a:Bel-Air

6-a:Picpus

6-a:Nation

#### 6-b:Nation -- Etoile

6-b:Nation

6-b:Picpus

6-b:Bel-Air

6-b:Daumesnil

6-b:Dugommier

6-b:Bercy

6-b:Quai de la Gare

6-b:Chevaleret

6-b:Nationale

6-b:Place d'Italie

6-b:Corvisart

6-b:GlaciÚre

6-b:Saint-Jacques

6-b:Denfert-Rochereau

6-b:Raspail

6-b:Edgar Quinet

6-b:Montparnasse - BienvenÃŒe

6-b:Pasteur

6-b:SÚvres - Lecourbe

6-b:Cambronne

6-b:La Motte-Picquet - Grenelle

6-b:Dupleix

6-b:Bir-Hakeim

6-b:Passy

6-b:Trocadéro

6-b:BoissiÚre

6-b:Kléber

6-b:Charles de Gaulle - Étoile

#### 7-a:La Courneuve -- Mairie d'Ivry

7-a:La Courneuve - 8 Mai 1945

7-a:Fort d'Aubervilliers

7-a:Aubervilliers - Pantin - Quatre Chemins

7-a:Porte de la Villette

7-a:Corentin Cariou

7-a:Crimée

7-a:Riquet

7-a:Stalingrad

7-a:Louis Blanc

7-a:Château-Landon

7-a:Gare de l'Est

7-a:PoissonniÚre

7-a:Cadet

7-a:Le Peletier

7-a:Chaussée d'Antin - La Fayette

7-a:Opéra

7-a:Pyramides

7-a:Palais Royal - Musée du Louvre

7-a:Pont Neuf

7-a:Châtelet

7-a:Pont Marie

7-a:Sully - Morland

7-a:Jussieu

7-a:Place Monge

7-a:Censier - Daubenton

7-a:Les Gobelins

7-a:Place d'Italie

7-a:Tolbiac

7-a:Maison Blanche

7-a:Porte d'Italie

7-a:Porte de Choisy

7-a:Porte d'Ivry

7-a:Pierre et Marie Curie

7-a:Mairie d'Ivry

#### 7-b:Mairie d'Ivry -- La Courneuve

7-b:Mairie d'Ivry

7-b:Pierre et Marie Curie

7-b:Porte d'Ivry

7-b:Porte de Choisy

7-b:Porte d'Italie

7-b:Maison Blanche

7-b:Tolbiac

7-b:Place d'Italie

7-b:Les Gobelins

7-b:Censier - Daubenton

7-b:Place Monge

7-b:Jussieu

7-b:Sully - Morland

7-b:Pont Marie

7-b:Châtelet

7-b:Pont Neuf

7-b:Palais Royal - Musée du Louvre

7-b:Pyramides

7-b:Opéra

7-b:Chaussée d'Antin - La Fayette

7-b:Le Peletier

7-b:Cadet

7-b:PoissonniÚre

7-b:Gare de l'Est

7-b:Château-Landon

7-b:Louis Blanc

7-b:Stalingrad

7-b:Riquet

7-b:Crimée

7-b:Corentin Cariou

7-b:Porte de la Villette

7-b:Aubervilliers - Pantin - Quatre Chemins

7-b:Fort d'Aubervilliers

7-b:La Courneuve - 8 Mai 1945

#### 7-c:Maison Blanche -- Villejuif

7-c:Maison Blanche

7-c:Le Kremlin-Bicêtre

7-c:Villejuif - Léo Lagrange

7-c:Villejuif - Paul Vaillant-Couturier

7-c:Villejuif - Louis Aragon

#### 7-d:Villejuif -- Maison Blanche

7-d:Villejuif - Louis Aragon

7-d:Villejuif - Paul Vaillant-Couturier

7-d:Villejuif - Léo Lagrange

7-d:Le Kremlin-Bicêtre

7-d:Maison Blanche

#### 7b-e:Pré-Saint-Gervais -- Louis Blanc

7b-e:Pré Saint-Gervais

7b-e:Danube

7b-e:Botzaris

7b-e:Buttes Chaumont

7b-e:Bolivar

7b-e:JaurÚs

7b-e:Louis Blanc

#### 7b-f:Louis Blanc -- Pré-Saint-Gervais

7b-f:Louis Blanc

7b-f:JaurÚs

7b-f:Bolivar

7b-f:Buttes Chaumont

7b-f:Botzaris

7b-f:Place des Fêtes

7b-f:Pré Saint-Gervais

#### 8-a:Balard -- Créteil

8-a:Balard

8-a:Lourmel

8-a:Boucicaut

8-a:Félix Faure

8-a:Commerce

8-a:La Motte-Picquet - Grenelle

8-a:École Militaire

8-a:La Tour-Maubourg

8-a:Invalides

8-a:Concorde

8-a:Madeleine

8-a:Opéra

8-a:Richelieu - Drouot

8-a:Grands Boulevards

8-a:Bonne Nouvelle

8-a:Strasbourg - Saint-Denis

8-a:République

8-a:Filles du Calvaire

8-a:Saint-Sébastien - Froissart

8-a:Chemin Vert

8-a:Bastille

8-a:Ledru-Rollin

8-a:Faidherbe - Chaligny

8-a:Reuilly - Diderot

8-a:Montgallet

8-a:Daumesnil

8-a:Michel Bizot

8-a:Porte Dorée

8-a:Porte de Charenton

8-a:Liberté

8-a:Charenton - Écoles

8-a:École Vétérinaire de Maisons-Alfort

8-a:Maisons-Alfort - Stade

8-a:Maisons-Alfort - Les Juilliottes

8-a:Créteil - L'Échat

8-a:Créteil - Université

8-a:Créteil - Préfecture

#### 8-b:Créteil -- Balard

8-b:Créteil - Préfecture

8-b:Créteil - Université

8-b:Créteil - L'Échat

8-b:Maisons-Alfort - Les Juilliottes

8-b:Maisons-Alfort - Stade

8-b:École Vétérinaire de Maisons-Alfort

8-b:Charenton - Écoles

8-b:Liberté

8-b:Porte de Charenton

8-b:Porte Dorée

8-b:Michel Bizot

8-b:Daumesnil

8-b:Montgallet

8-b:Reuilly - Diderot

8-b:Faidherbe - Chaligny

8-b:Ledru-Rollin

8-b:Bastille

8-b:Chemin Vert

8-b:Saint-Sébastien - Froissart

8-b:Filles du Calvaire

8-b:République

8-b:Strasbourg - Saint-Denis

8-b:Bonne Nouvelle

8-b:Grands Boulevards

8-b:Richelieu - Drouot

8-b:Opéra

8-b:Madeleine

8-b:Concorde

8-b:Invalides

8-b:La Tour-Maubourg

8-b:École Militaire

8-b:La Motte-Picquet - Grenelle

8-b:Commerce

8-b:Félix Faure

8-b:Boucicaut

8-b:Lourmel

8-b:Balard

#### 9-a:Pont de SÚvres, Mairie de Montreuil

9-a:Pont de SÚvres

9-a:Billancourt

9-a:Marcel Sembat

9-a:Porte de Saint-Cloud

9-a:Exelmans

9-a:Michel-Ange - Molitor

9-a:Michel-Ange - Auteuil

9-a:Jasmin

9-a:Ranelagh

9-a:La Muette

9-a:Rue de la Pompe

9-a:Trocadéro

9-a:Iéna

9-a:Alma - Marceau

9-a:Franklin D. Roosevelt

9-a:Saint-Philippe du Roule

9-a:Miromesnil

9-a:Saint-Augustin

9-a:Havre - Caumartin

9-a:Chaussée d'Antin - La Fayette

9-a:Richelieu - Drouot

9-a:Grands Boulevards

9-a:Bonne Nouvelle

9-a:Strasbourg - Saint-Denis

9-a:République

9-a:Oberkampf

9-a:Saint-Ambroise

9-a:Voltaire

9-a:Charonne

9-a:Rue des Boulets

9-a:Nation

9-a:Buzenval

9-a:Maraîchers

9-a:Porte de Montreuil

9-a:Robespierre

9-a:Croix de Chavaux

9-a:Mairie de Montreuil

#### 9-b:Mairie de Montreuil, Pont de SÚvres

9-b:Mairie de Montreuil

9-b:Croix de Chavaux

9-b:Robespierre

9-b:Porte de Montreuil

9-b:Maraîchers

9-b:Buzenval

9-b:Nation

9-b:Rue des Boulets

9-b:Charonne

9-b:Voltaire

9-b:Saint-Ambroise

9-b:Oberkampf

9-b:République

9-b:Strasbourg - Saint-Denis

9-b:Bonne Nouvelle

9-b:Grands Boulevards

9-b:Richelieu - Drouot

9-b:Chaussée d'Antin - La Fayette

9-b:Havre - Caumartin

9-b:Saint-Augustin

9-b:Miromesnil

9-b:Saint-Philippe du Roule

9-b:Franklin D. Roosevelt

9-b:Alma - Marceau

9-b:Iéna

9-b:Trocadéro

9-b:Rue de la Pompe

9-b:La Muette

9-b:Ranelagh

9-b:Jasmin

9-b:Michel-Ange - Auteuil

9-b:Michel-Ange - Molitor

9-b:Exelmans

9-b:Porte de Saint-Cloud

9-b:Marcel Sembat

9-b:Billancourt

9-b:Pont de SÚvres

#### 10-a:Boulogne -- Austerlitz

10-a:Boulogne - Pont de Saint-Cloud

10-a:Boulogne - Jean JaurÚs

10-a:Michel-Ange - Molitor

10-a:Chardon-Lagache

10-a:Mirabeau

10-a:Javel - André Citroën

10-a:Charles Michels

10-a:Avenue Émile Zola

10-a:La Motte-Picquet - Grenelle

10-a:Ségur

10-a:Duroc

10-a:Vaneau

10-a:SÚvres - Babylone

10-a:Mabillon

10-a:Odéon

10-a:Cluny - La Sorbonne

10-a:Maubert - Mutualité

10-a:Cardinal Lemoine

10-a:Jussieu

10-a:Gare d'Austerlitz

#### 10-b:Austerlitz -- Boulogne

10-b:Gare d'Austerlitz

10-b:Jussieu

10-b:Cardinal Lemoine

10-b:Maubert - Mutualité

10-b:Cluny - La Sorbonne

10-b:Odéon

10-b:Mabillon

10-b:SÚvres - Babylone

10-b:Vaneau

10-b:Duroc

10-b:Ségur

10-b:La Motte-Picquet - Grenelle

10-b:Avenue Émile Zola

10-b:Charles Michels

10-b:Javel - André Citroën

10-b:Église d'Auteuil

10-b:Michel-Ange - Auteuil

10-b:Porte d'Auteuil

10-b:Boulogne - Jean JaurÚs

10-b:Boulogne - Pont de Saint-Cloud

#### 10-c:Porte d'Auteuil -- Michel-Ange - Molitor (avant 1980 et Boulogne)

# 10-c:Porte d'Auteuil

####

# 10-c:Michel-Ange - Molitor

#### 11-a:Mairie des Lilas -- Châtelet

11-a:Mairie des Lilas

11-a:Porte des Lilas

11-a:Télégraphe

11-a:Place des Fêtes

11-a:Jourdain

11-a:Pyrénées

11-a:Belleville

11-a:Goncourt

11-a:République

11-a:Arts et Métiers

11-a:Rambuteau

11-a:HÃŽtel de Ville

11-a:Châtelet

#### 11-b:Châtelet -- Mairie des Lilas

11-b:Châtelet

11-b:HÃŽtel de Ville

11-b:Rambuteau

11-b:Arts et Métiers

11-b:République

11-b:Goncourt

11-b:Belleville

11-b:Pyrénées

11-b:Jourdain

11-b:Place des Fêtes

11-b:Télégraphe

11-b:Porte des Lilas

11-b:Mairie des Lilas

#### 12-a:Porte de la Chapelle -- Mairie d'Issy

12-a:Porte de la Chapelle

12-a:Marx Dormoy

12-a:Marcadet - Poissonniers

12-a:Jules Joffrin

12-a:Lamarck - Caulaincourt

12-a:Abbesses

12-a:Pigalle

12-a:Saint-Georges

12-a:Notre-Dame-de-Lorette

12-a:Trinité - d'Estienne d'Orves

12-a:Saint-Lazare

12-a:Madeleine

12-a:Concorde

12-a:Assemblée nationale

12-a:Solférino

12-a:Rue du Bac

12-a:SÚvres - Babylone

12-a:Rennes

12-a:Notre-Dame-des-Champs

12-a:Montparnasse - BienvenÃŒe

12-a:FalguiÚre

12-a:Pasteur

12-a:Volontaires

12-a:Vaugirard

12-a:Convention

12-a:Porte de Versailles

12-a:Corentin Celton

12-a:Mairie d'Issy

#### 12-b:Mairie d'Issy -- Porte de la Chapelle

12-b:Mairie d'Issy

12-b:Corentin Celton

12-b:Porte de Versailles

12-b:Convention

12-b:Vaugirard

12-b:Volontaires

12-b:Pasteur

12-b:FalguiÚre

12-b:Montparnasse - BienvenÃŒe

12-b:Notre-Dame-des-Champs

12-b:Rennes

12-b:SÚvres - Babylone

12-b:Rue du Bac

12-b:Solférino

12-b:Assemblée nationale

12-b:Concorde

12-b:Madeleine

12-b:Saint-Lazare

12-b:Trinité - d'Estienne d'Orves

12-b:Notre-Dame-de-Lorette

12-b:Saint-Georges

12-b:Pigalle

12-b:Abbesses

12-b:Lamarck - Caulaincourt

12-b:Jules Joffrin

12-b:Marcadet - Poissonniers

12-b:Marx Dormoy

12-b:Porte de la Chapelle

#### 13-a:Saint-Denis -- Montrouge

13-a:Basilique de Saint-Denis

13-a:Saint-Denis - Porte de Paris

13-a:Carrefour Pleyel

13-a:Mairie de Saint-Ouen

13-a:Garibaldi

13-a:Porte de Saint-Ouen

13-a:Guy MÃŽquet

13-a:La Fourche

13-a:Place de Clichy

13-a:LiÚge

13-a:Saint-Lazare

13-a:Miromesnil

13-a:Champs-Élysées - Clémenceau

13-a:Invalides

13-a:Varenne

13-a:Saint-François-Xavier

13-a:Duroc

13-a:Montparnasse - BienvenÃŒe

13-a:Gaîté

13-a:Pernety

13-a:Plaisance

13-a:Porte de Vanves

13-a:Malakoff - Plateau de Vanves

13-a:Malakoff - Rue Étienne Dolet

13-a:Châtillon - Montrouge

#### 13-b:Montrouge -- Saint-Denis

13-b:Châtillon - Montrouge

13-b:Malakoff - Rue Étienne Dolet

13-b:Malakoff - Plateau de Vanves

13-b:Porte de Vanves

13-b:Plaisance

13-b:Pernety

13-b:Gaîté

13-b:Montparnasse - BienvenÃŒe

13-b:Duroc

13-b:Saint-François-Xavier

13-b:Varenne

13-b:Invalides

13-b:Champs-Élysées - Clémenceau

13-b:Miromesnil

13-b:Saint-Lazare

13-b:LiÚge

13-b:Place de Clichy

13-b:La Fourche

13-b:Guy MÃŽquet

13-b:Porte de Saint-Ouen

13-b:Garibaldi

13-b:Mairie de Saint-Ouen

13-b:Carrefour Pleyel

13-b:Saint-Denis - Porte de Paris

13-b:Basilique de Saint-Denis

#### 13-c:Gabriel Péri -- La Fourche

13-c:Gabriel Péri

13-c:Mairie de Clichy

13-c:Porte de Clichy

13-c:Brochant

13-c:La Fourche

#### 13-d:La Fourche -- Gabriel Péri

13-d:La Fourche

13-d:Brochant

13-d:Porte de Clichy

13-d:Mairie de Clichy

13-d:Gabriel Péri

#### 14-a:Saint-Lazare -- Olympiades

14-a:Saint-Lazare

14-a:Madeleine

14-a:Pyramides

14-a:Châtelet

14-a:Gare de Lyon

14-a:Bercy

14-a:Cour Saint-Émilion

14-a:BibliothÚque François Mitterrand

14-a:Olympiades

#### 14-b:Saint-Lazare -- Olympiades

14-b:Olympiades

14-b:BibliothÚque François Mitterrand

14-b:Cour Saint-Émilion

14-b:Bercy

14-b:Gare de Lyon

14-b:Châtelet

14-b:Pyramides

14-b:Madeleine

14-b:Saint-Lazare
j'ai utilisé le code que vous m'avez conseillé et le resultat qui donne c'est ça:

Hello3

Toutes les coordonnes sont enregistrer dans Hashtable

Vérification des infos enregistrées :

-----> NOM DE LIGNE : La Fourche -- Gabriel Péri

-----> FIN DE RECUPERATION DE LA LIGNE : La Fourche -- Gabriel Péri

-----> NOM DE LIGNE : Saint-Lazare -- Olympiades

-----> FIN DE RECUPERATION DE LA LIGNE : Saint-Lazare -- Olympiades

-----> NOM DE LIGNE : La Défense -- Château de Vincennes

-----> FIN DE RECUPERATION DE LA LIGNE : La Défense -- Château de Vincennes

-----> NOM DE LIGNE : Saint-Denis -- Montrouge

-----> FIN DE RECUPERATION DE LA LIGNE : Saint-Denis -- Montrouge

-----> NOM DE LIGNE : Gabriel Péri -- La Fourche

-----> FIN DE RECUPERATION DE LA LIGNE : Gabriel Péri -- La Fourche

-----> NOM DE LIGNE : Bobigny -- Place d'Italie

-----> FIN DE RECUPERATION DE LA LIGNE : Bobigny -- Place d'Italie

-----> NOM DE LIGNE : Porte de Clignancourt -- Porte d'Orléans

-----> FIN DE RECUPERATION DE LA LIGNE : Porte de Clignancourt -- Porte d'Orléans

-----> NOM DE LIGNE : Porte d'Orléans -- Porte de Clignancourt

-----> FIN DE RECUPERATION DE LA LIGNE : Porte d'Orléans -- Porte de Clignancourt

-----> NOM DE LIGNE : Montrouge -- Saint-Denis

-----> FIN DE RECUPERATION DE LA LIGNE : Montrouge -- Saint-Denis

-----> NOM DE LIGNE : Etoile -- Nation

-----> FIN DE RECUPERATION DE LA LIGNE : Etoile -- Nation

-----> NOM DE LIGNE : Châtelet -- Mairie des Lilas

-----> FIN DE RECUPERATION DE LA LIGNE : Châtelet -- Mairie des Lilas

-----> NOM DE LIGNE : La Courneuve -- Mairie d'Ivry

-----> FIN DE RECUPERATION DE LA LIGNE : La Courneuve -- Mairie d'Ivry

-----> NOM DE LIGNE : Pont de Sèvres, Mairie de Montreuil

-----> FIN DE RECUPERATION DE LA LIGNE : Pont de Sèvres, Mairie de Montreuil

-----> NOM DE LIGNE : Gambetta -- Porte des Lilas

-----> FIN DE RECUPERATION DE LA LIGNE : Gambetta -- Porte des Lilas

-----> NOM DE LIGNE : Porte des Lilas -- Gambetta

-----> FIN DE RECUPERATION DE LA LIGNE : Porte des Lilas -- Gambetta

-----> NOM DE LIGNE : Louis Blanc -- Pré-Saint-Gervais

-----> FIN DE RECUPERATION DE LA LIGNE : Louis Blanc -- Pré-Saint-Gervais

-----> NOM DE LIGNE : Porte de la Chapelle -- Mairie d'Issy

-----> FIN DE RECUPERATION DE LA LIGNE : Porte de la Chapelle -- Mairie d'Issy

-----> NOM DE LIGNE : Pont de Levallois -- Gallieni

-----> FIN DE RECUPERATION DE LA LIGNE : Pont de Levallois -- Gallieni

-----> NOM DE LIGNE : Balard -- Créteil

-----> FIN DE RECUPERATION DE LA LIGNE : Balard -- Créteil

-----> NOM DE LIGNE : Château de Vincennes -- La Défense

-----> FIN DE RECUPERATION DE LA LIGNE : Château de Vincennes -- La Défense

-----> NOM DE LIGNE : Gallieni -- Pont de Levallois

-----> FIN DE RECUPERATION DE LA LIGNE : Gallieni -- Pont de Levallois

-----> NOM DE LIGNE : Nation -- Etoile -- Porte Dauphine

-----> FIN DE RECUPERATION DE LA LIGNE : Nation -- Etoile -- Porte Dauphine

-----> NOM DE LIGNE : Boulogne -- Austerlitz

-----> FIN DE RECUPERATION DE LA LIGNE : Boulogne -- Austerlitz

-----> NOM DE LIGNE : Mairie de Montreuil, Pont de Sèvres

-----> FIN DE RECUPERATION DE LA LIGNE : Mairie de Montreuil, Pont de Sèvres

-----> NOM DE LIGNE : Nation -- Etoile

-----> FIN DE RECUPERATION DE LA LIGNE : Nation -- Etoile

-----> NOM DE LIGNE : Mairie des Lilas -- Châtelet

-----> FIN DE RECUPERATION DE LA LIGNE : Mairie des Lilas -- Châtelet

-----> NOM DE LIGNE : Maison Blanche -- Villejuif

-----> FIN DE RECUPERATION DE LA LIGNE : Maison Blanche -- Villejuif

-----> NOM DE LIGNE : Porte d'Auteuil -- Michel-Ange - Molitor (avant 1980 et Boulogne)

-----> FIN DE RECUPERATION DE LA LIGNE : Porte d'Auteuil -- Michel-Ange - Molitor (avant 1980 et Boulogne)

-----> NOM DE LIGNE : Place d'Italie -- Bobigny

-----> FIN DE RECUPERATION DE LA LIGNE : Place d'Italie -- Bobigny

-----> NOM DE LIGNE : Créteil -- Balard

-----> FIN DE RECUPERATION DE LA LIGNE : Créteil -- Balard

-----> NOM DE LIGNE : Austerlitz -- Boulogne

-----> FIN DE RECUPERATION DE LA LIGNE : Austerlitz -- Boulogne

-----> NOM DE LIGNE : Porte Dauphine -- Etoile -- Nation

-----> FIN DE RECUPERATION DE LA LIGNE : Porte Dauphine -- Etoile -- Nation

-----> NOM DE LIGNE : Pré-Saint-Gervais -- Louis Blanc

-----> FIN DE RECUPERATION DE LA LIGNE : Pré-Saint-Gervais -- Louis Blanc

-----> NOM DE LIGNE : Mairie d'Issy -- Porte de la Chapelle

-----> FIN DE RECUPERATION DE LA LIGNE : Mairie d'Issy -- Porte de la Chapelle

-----> NOM DE LIGNE : Mairie d'Ivry -- La Courneuve

-----> FIN DE RECUPERATION DE LA LIGNE : Mairie d'Ivry -- La Courneuve

-----> NOM DE LIGNE : Villejuif -- Maison Blanche

-----> FIN DE RECUPERATION DE LA LIGNE : Villejuif -- Maison Blanche

-----> NOM DE LIGNE :

-----> FIN DE RECUPERATION DE LA LIGNE :
0
rtjhlk Messages postés 43 Date d'inscription jeudi 26 février 2009 Statut Membre Dernière intervention 28 août 2009
27 févr. 2009 à 14:44
merci merci  beaucoup
0
amundain Messages postés 110 Date d'inscription mercredi 28 mars 2007 Statut Membre Dernière intervention 28 août 2012 1
27 févr. 2009 à 14:50
Ça ne pouvait pas marcher tel quel en fait...

Après modifs et tests, ce code fonctionne :

package com.almerys.sd;
import java.io.BufferedReader;
import java.io.FileReader;

import java.io.DataInputStream;

import java.io.FileInputStream;

import java.io.IOException;

import java.io.InputStreamReader;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Set;

import java.util.Hashtable;

public class Lignes {

    public static void ajouterLignes() throws NumberFormatException, IOException

    {

        Hashtable<String, ArrayList<String>> listeDesLignes = new Hashtable<String, ArrayList<String>>();

        // conversion d'octets dufichier GEO enfluxdecaractères

        FileInputStream ips = new FileInputStream("paris_metro.graph");

        // Ajout d'un filtre pour liredemanière plus pratiquelescaractères

        DataInputStream ipsr = new DataInputStream(ips);

        // Lecture dufluxcodéen UTF8 en ISO-8859-1 ideal pour les accent du language Français

        //InputStreamReader str = new InputStreamReader(ipsr, "UTF8");

        // Ce type defiltrepermetdemettrelesdonnéesdufluxstrdansuntampon

        BufferedReader br = new BufferedReader(new FileReader("paris_metro.graph"));

        String sline;

        ArrayList<String> lesStations = new ArrayList<String>();
       
        while ((sline = br.readLine()) != null)

        {

            String nomLigne = "";
            String numeroLigne = "";
           
            if (!sline.equals("")) {

               // Si on est sur le nom de ligne
                if (sline.substring(0, 4).equals("####")) {
                   
                    numeroLigne = sline.substring(sline.indexOf(" ") + 1, sline.indexOf(":"));
                    nomLigne = sline.substring(sline.indexOf(":") + 1);
                   
                    if (!listeDesLignes.containsKey(nomLigne)&&!nomLigne.equals("")){
                       
                    listeDesLignes.put(nomLigne, lesStations);
                    lesStations.clear();
                    }
                   
                }
                // Sinon on est sur une station
                else {

                    lesStations.add(sline.substring(sline.indexOf(":")+1));

                }
             

            }

        }

        ipsr.close();

        System.out.println("Toutes les coordonnes sont enregistrer dans Hashtable");

        // Sortie console des infos mises dans la hashtable
        System.out.println("Vérification des infos enregistrées : ");

        // récupération des clés de la hashtable
        Set keySet = listeDesLignes.keySet();

        // Création d'un iterateur sur ces clés pour le parcours
        Iterator it = keySet.iterator();

        // Parcours des enregistrements
        while (it.hasNext()) {
            // Récupération + sortie console de la clé
            String key = (String) it.next();
            System.out.println("-----> NOM DE LIGNE : " + key);
           
            // Récupération des valeurs sous forme de List
            List listeStations = listeDesLignes.get(key);
           
            // Parcours de la liste
            for (int i = 0; i < listeStations.size(); i++) {
                System.out.println("Stations : "+listeStations.get(i));
            }
            System.out.println("-----> FIN DE RECUPERATION DE LA LIGNE : " + key);

        }

    }

    public static void main(String[] args) throws NumberFormatException, IOException

    {

        System.out.println("Hello3");

        ajouterLignes();

    }

}

A +,

amundain
Java bien,merci.
0
amundain Messages postés 110 Date d'inscription mercredi 28 mars 2007 Statut Membre Dernière intervention 28 août 2012 1
27 févr. 2009 à 14:51
En revanche j'ai modifié l'InputStreamReader par un FileReader pour aller plus vite, tu devrais garder ton code comme il était si cette partie fonctionne bien...

amundain

Java bien,merci.
0
rtjhlk Messages postés 43 Date d'inscription jeudi 26 février 2009 Statut Membre Dernière intervention 28 août 2009
27 févr. 2009 à 14:54
est ce que si je veux afficher les correspondance je dois garder le meme code?
c'est ce que je veux afficher ces correspondance
Châtelet Les Halles
Porte Dauphine Avenue Foch
La Chapelle Gare du Nord
Havre - Caumartin Opéra
Saint-Michel Cluny - La Sorbonne
Bir Hakeim Champs de Mars - Tour Eiffel
La Muette Boulainvilliers
Alma - Marceau Pont de l'Alma
Solférino Musée d'Orsay
Gare de Lyon Quai de la Rapée Gare d'Austerlitz Bercy
0
amundain Messages postés 110 Date d'inscription mercredi 28 mars 2007 Statut Membre Dernière intervention 28 août 2012 1
27 févr. 2009 à 15:06
Non, il va falloir aménager tout ça...
Mais je n'ai plus le temps pr le moment, j'essaierai de jeter un oeil + tard...

A +,

amundain

Java bien,merci.
0
rtjhlk Messages postés 43 Date d'inscription jeudi 26 février 2009 Statut Membre Dernière intervention 28 août 2009
27 févr. 2009 à 15:20
ok merci
0
rtjhlk Messages postés 43 Date d'inscription jeudi 26 février 2009 Statut Membre Dernière intervention 28 août 2009
27 févr. 2009 à 20:02
Bonjour ;
voila le code que j'ai effectuer pour lire ce fichier mais je ne sais si c'est bien ce qu'il faut faire ou pas ;merci
le fichier que je voulais lire sur java est celui là:
Châtelet Les Halles
Porte Dauphine Avenue Foch
La Chapelle Gare du Nord
Havre - Caumartin Opéra
Saint-Michel Cluny - La Sorbonne
Bir Hakeim Champs de Mars - Tour Eiffel
La Muette Boulainvilliers
Alma - Marceau Pont de l'Alma
Solférino Musée d'Orsay
Gare de Lyon Quai de la Rapée Gare d'Austerlitz Bercy
le code que j'ai fait est celui là:

public

static ArrayList> correspondance(){

ArrayList> liste_Des_Correspondance=

new ArrayList>();

try{

//conversion d'octets du fichier CONNECTIONS en flux de caractèresFileInputStream fis =

new FileInputStream(
"paris_metro.conn");

// Ajout d'un filtre pour lire de manière plus pratique les caractèresDataInputStream in =

new DataInputStream(fis);

//Lecture du flux codé en UTF8 en ISO-8859-1 ideal pour les accent du language FrançaisInputStreamReader str =

new InputStreamReader(in,
"UTF8");BufferedReader br =

new BufferedReader(str);

// Lecture des lignes du flux jusqu'à la fin du fluxString strLine;

while ((strLine = br.readLine()) !=
null ) {String []div =strLine.split(

"\t");ArrayList<String> liste_une_correspondance=

new ArrayList<String>();

liste_une_correspondance.add(div);

liste_Des_Correspondance.add(small_list);

}

in.close();

}

catch (Exception e){System.err.println(

"Error: " + e.getMessage());}

return liste_Des_Correspondance;}
0
rtjhlk Messages postés 43 Date d'inscription jeudi 26 février 2009 Statut Membre Dernière intervention 28 août 2009
28 févr. 2009 à 12:53
bonjour voiçi le code que j'ai fait pour le fichier correspondances:





public










static


ArrayList> correspondance(){

ArrayList> liste_Des_Correspondance=




new


ArrayList>();




try


{



//conversion d'octets du fichier CONNECTIONS en flux de caractères


FileInputStream fis =






new


FileInputStream(


"paris_metro.conn"

);



// Ajout d'un filtre pour lire de manière plus pratique les caractères


DataInputStream in =






new


DataInputStream(fis);



//Lecture du flux codé en UTF8 en ISO-8859-1 ideal pour les accent du language Français


InputStreamReader str=






new


InputStreamReader(in,


"UTF8"

);BufferedReader br =




new


BufferedReader(str);



// Lecture des lignes du flux jusqu'à la fin du flux


String strLine;












while


((strLine = br.readLine()) !=



null


) {String []div=strLine.split(



"\t"

);ArrayList<String> liste_une_correspondance=




new


ArrayList<String>();

liste_une_correspondance.add(div);

liste_Des_Correspondance.add(small_list);

}

in.close();

}




catch


(Exception e){System.err.println(



"Error: "

+ e.getMessage());}




return


liste_Des_Correspondance;}

maintenant je veux appliquer le principe de dijkstra sur le fichier graphe pour trouver le chemin le plus court entre les stations en utilisant les constante:

[constants]
connection_time=300
connection_distance=400
walker_speed=1.11
waiting_time=120
stop_time=15
acceleration=0.9
deceleration=0.9
subway_speed=16.67
comment je dois faire s'il vous plait pour appliquer l'algorithme de dijktra.je vous remercie
0
rtjhlk Messages postés 43 Date d'inscription jeudi 26 février 2009 Statut Membre Dernière intervention 28 août 2009
1 mars 2009 à 21:28
Bonjour;pour appliquer l'algorithme de dijkstra sur le fichier graphe j'ai utiliser ce code mais je ne comprend pas pourquoi ça ne marche pas?
import

java.io.BufferedReader;
import

java.io.DataInputStream;
import

java.io.FileInputStream;
import

java.io.IOException;
import

java.io.InputStreamReader;
import

java.util.ArrayList;
import

java.util.Hashtable;
import

java.util.Iterator;
import

java.util.Map;
import

java.util.Set;

 

public

class InputGraph {

public
int [][]
arc;
// Matrice d'adjacense

public
sommet;
//objet
sommet

public
static
int
count;

public InputGraph (
int n){

arc =
new
int[n][n];

//sommet = new Object[n];

}

public

int GetSize (){
// la taillesommet

//return sommet.length;

return
sommet.size();}

public

void SetSommet(String node, Object label){
// d'ajouter unsommet// sommet[node] = label;

sommet.put(node, label)
;}

public

Object GetSommet(String node){
// lavaleur d'un sommet

//return sommet[node];

return
sommet.get(node);

}

 

public

void AddArc(
int SommetDep,
int SommetArr,
int dist){
// un

arc [SommetDep][SommetArr] = dist;

}

public

int GetPoids(
int SommetDep,
int SommetArr){
// la

return
arc [SommetDep][SommetArr];

}

 

 

 

public

void AfficheMatrice(){
//lamatricegraphe

/*for (int j = 0; j < arc.length; j++) {System.out.println("");

System.out.println( " DE " + sommet[j] +" jusqu'à ");

System.out.println("");

for (int i = 0; i < arc[j].length; i++) {

if (arc[j][i]>0)

System.out. (sommet la distance estde " +arc[j][i] );

}

}*/

}

public

int [] ChercheVoisin(
int node){
//undesadjacentssommet

count =0;

for (
int i = 0; i <
arc[node].
length; i++) {

if (
arc[node][i]>0 ) {
count ++; }}

final
int[]rep =
new
int [
count];

count= 0;

for (
int i = 0; i <
arc[node].
length; i++){

if(
arc[node][i]>0){rep[
count ++] = i;} }

return rep;}

 

public

static
void ajouterLignes()
throws NumberFormatException, IOException{

Hashtable<String,ArrayList<String>> listeDesLignes =

new Hashtable<String,ArrayList<String>>();BufferedReader reader;

//conversion d'octets fichier endecaractèresFileInputStream ips =

new FileInputStream(
"paris_metro.graph");

// d'un filtreliremanièrepratiquecaractèresDataInputStream ipsr =

new DataInputStream(ips);

// Lecture flux codé UTF8 enles accent language FrançaisInputStreamReader str =

new InputStreamReader(ipsr,
"UTF8");

// type defiltredemettredonnéesdustrdanstamponBufferedReader br =

new BufferedReader(str);

String sline;

while ((sline= br.readLine())!=
null ){
String NomLigne "";String NumeroLigne

"";ArrayList<String> lesStation =

new ArrayList<String>();

if (sline.equals(
"")){listeDesLignes.put(NomLigne, lesStation);

}

if (sline.equals(
"")! =
true){

if(sline.substring(0,4).equals(
"####")){

NumeroLigne = sline.substring(sline.indexOf(

" ")+1, sline.indexOf(
":"));NomLigne = sline.substring(sline.indexOf(

":")+1);}

else
if(sline.substring(0,sline.indexOf(
":")).equals(NumeroLigne)){

lesStation.add(sline.substring(sline.indexOf(

":")+1));

}

}

}

ipsr.close();

Hashtable table =

newHashtable(); table.put(

"key1",
"val1");

Set keySet= table.keySet();

Iterator it=(Iterator) keySet.iterator();

InputGraph ex =

new InputGraph (100);

while (((java.util.Iterator) it).hasNext()){ Object key = it.next();

ex.SetSommet( key, table.get(key));

System.

out .println(
"clé : "+(String)key+
" - valeur : "+ table.get(key)); }

 

//System.out. ("Toutes lessontenregistrerHashtableex.AfficheMatrice();

System.

out.println(
"");System.

out.println(
"Les plus court chemin à partir du sommet source sont :");

final
int [] pred = Dijkstra.djikstra(ex, 0);

for (
int n = 0; n < 4; n++) {

Dijkstra. AfficheChemin (ex,pred, 0, n);

}

}

 

public

static
void main(String[] args) {

//InputGraph ex = new InputGraph (100);

/*.SetSommet(0, "New yorkex.SetSommet(1, "Paris");

ex.SetSommet(2, "Londres");

ex.SetSommet(3, "New delhi");

ex.AddArc(0, 1, 400);

ex.AddArc(0, 2, 200);

ex.AddArc(1, 2, 300);

ex.AddArc(2, 1, 100);

ex.AddArc(1, 3, 100);

ex.AddArc(2, 3, 500);

ex.AddArc(2, 0, 200);*/

try{ajouterLignes();

}

catch(IOException _e){

}

}

}
0
rtjhlk Messages postés 43 Date d'inscription jeudi 26 février 2009 Statut Membre Dernière intervention 28 août 2009
2 mars 2009 à 14:59
amundain vous etes là?est ce que vous pouvez m'aider s'il vous plait pour appliquer l'algo de dijkstra  sur mon graphe ?
0
Rejoignez-nous