Ouattara Idriss
Messages postés3Date d'inscriptionjeudi 7 décembre 2006StatutMembreDernière intervention 5 juin 2010
-
5 juin 2010 à 12:12
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020
-
5 juin 2010 à 13:59
Bonjour à tous les développeurs Java. Je dois, dans un fichier texte, extraire des nombres entiers et des nombres à virgules. La structure d'une ligne du fichier en question se présente comme suit :
Waypoint 8878 User Waypoint 29 N 679284 493518 0.5 m 26 C Symbol & Name Unknown Waypoint 6/17/2009 11:25:02 AM
Je devrais, pour chaque ligne, extraire les nombres et les ranger dans un tableau. C'est à dire que les nombres extraits d'une même ligne doivent être sur la même ligne du tableau pour une exploitation ultérieure.
Exple: pour la ligne ci-dessus, je dois avoir:
8878 29 679284 493518 0.5
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020371 5 juin 2010 à 13:59
Tu peux utiliser cette fonction pour récupérer une liste de String qui correspond aux lignes de ton fichier
/**
* cette fonction va lire le contenu d'un fichier
* @param nomFichier : nom du fichier en entree
* @return resultat : liste des lignes
*/
public static List<String> lireFichier(String nomFichier){
BufferedReader fluxEntree=null;
String ligneLue;
List<String> lignes = new ArrayList<String>();
try{
fluxEntree = new BufferedReader(new FileReader(nomFichier));
ligneLue = fluxEntree.readLine();
while(ligneLue!=null){
lignes.add(ligneLue);
ligneLue = fluxEntree.readLine();
}
}
catch(IOException exc){
exc.printStackTrace();
}
try{
fluxEntree.close();
}
catch(IOException e){
e.printStackTrace();
}
return lignes;
}
Et ensuite, tu peux utiliset StringTokenizer pour récupérer les différentes choses qui t'intéressent
for(String s : lignes){
StringTokenizer st = new StringTokenizer(s);
while(st.nextToken()){
//Et là tu récupères une à une toutes les valeurs, à toi de voire
//Ce que tu veux en faire
}
}