rtjhlk
Messages postés43Date d'inscriptionjeudi 26 février 2009StatutMembreDernière intervention28 août 2009
-
26 févr. 2009 à 20:59
rtjhlk
Messages postés43Date d'inscriptionjeudi 26 février 2009StatutMembreDernière intervention28 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
rtjhlk
Messages postés43Date d'inscriptionjeudi 26 février 2009StatutMembreDernière intervention28 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:
rtjhlk
Messages postés43Date d'inscriptionjeudi 26 février 2009StatutMembreDernière intervention28 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
amundain
Messages postés110Date d'inscriptionmercredi 28 mars 2007StatutMembreDernière intervention28 août 20121 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 :
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("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
amundain
Messages postés110Date d'inscriptionmercredi 28 mars 2007StatutMembreDernière intervention28 août 20121 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...
rtjhlk
Messages postés43Date d'inscriptionjeudi 26 février 2009StatutMembreDernière intervention28 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