Lire une ligne d'un fichier texte
Fermé
Bilo01
Messages postés
4
Date d'inscription
vendredi 30 novembre 2012
Statut
Membre
Dernière intervention
3 décembre 2012
-
30 nov. 2012 à 15:50
Bilo01 Messages postés 4 Date d'inscription vendredi 30 novembre 2012 Statut Membre Dernière intervention 3 décembre 2012 - 3 déc. 2012 à 15:43
Bilo01 Messages postés 4 Date d'inscription vendredi 30 novembre 2012 Statut Membre Dernière intervention 3 décembre 2012 - 3 déc. 2012 à 15:43
A voir également:
- Lire une ligne d'un fichier texte
- Lire le coran en français pdf - Télécharger - Histoire & Religion
- Lire fichier epub - Guide
- Lire fichier bin - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
3 réponses
Utilisateur anonyme
30 nov. 2012 à 17:03
30 nov. 2012 à 17:03
Salut,
Il serait interessant d'avoir un exemple le plus complet possibe du contenu du fichier texte ...
merci
Il serait interessant d'avoir un exemple le plus complet possibe du contenu du fichier texte ...
merci
Bilo01
Messages postés
4
Date d'inscription
vendredi 30 novembre 2012
Statut
Membre
Dernière intervention
3 décembre 2012
3 déc. 2012 à 14:50
3 déc. 2012 à 14:50
Oui voilà c'est des données d'une machine M1 : 0-5-V,5-12-A,12-15-D : sous la forme Temps début - Temps fin - Etat
KX
Messages postés
16755
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
12 février 2025
3 020
3 déc. 2012 à 14:56
3 déc. 2012 à 14:56
Tu pourrais utiliser un Scanner en utilisant la virgule comme délimiteur :
Scanner sc = new Scanner(new File("C:/.../M1.txt")).useDelimiter(","); while (sc.hasNext()) { String[] valeurs = sc.next().split("-"); float tDeb = Float.parseFloat(valeurs[0]); float tFin = Float.parseFloat(valeurs[1]); String etat = valeurs[2]; // ... } sc.close();
Bilo01
Messages postés
4
Date d'inscription
vendredi 30 novembre 2012
Statut
Membre
Dernière intervention
3 décembre 2012
3 déc. 2012 à 15:17
3 déc. 2012 à 15:17
J'aimerai pouvoir ajouter d'autres lignes par la suite dans le fichier texte mais là j'aimerai nommer les parties séparées par (",") par un string [ ] jobs et les afficher pour tester. Je ne suis pas arriver à le faire par la fonction println :s:
KX
Messages postés
16755
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
12 février 2025
3 020
3 déc. 2012 à 15:28
3 déc. 2012 à 15:28
Pareil, est-ce que tu aurais un exemple ? Parce que ce n'est pas très clair...
Ce qui donne :
String[] jobs = {"tata", "titi", "toto", "tutu"}; Scanner sc = new Scanner(new File("C:/.../M1.txt")); while (sc.hasNextLine()) { String[] tab = sc.nextLine().split(","); for (int i=0; i<tab.length && i<jobs.length; i++) { String job = jobs[i]; String[] valeurs = tab[i].split("-"); float tDeb = Float.parseFloat(valeurs[0]); float tFin = Float.parseFloat(valeurs[1]); String etat = valeurs[2]; System.out.println(job+"\t"+tDeb+"\t"+tFin+"\t"+etat); } } sc.close();
Ce qui donne :
tata 0.0 5.0 V titi 5.0 12.0 A toto 12.0 15.0 D
Bilo01
Messages postés
4
Date d'inscription
vendredi 30 novembre 2012
Statut
Membre
Dernière intervention
3 décembre 2012
3 déc. 2012 à 15:43
3 déc. 2012 à 15:43
Le fichier est exactement comme suit :
0-5-V,5-12-A,12-15-D
Voilà le programme que je suis arrivé à éxécuter mais le gros problème c'est que j'ai du renseigner dans la boucle le nombre de jobs que j'ai. Y aura pas un moyen qui me comptera le nombre de jobs que j'ai et après je n'aurai qu'à renseigner ça dans la boucle ?
voici le programme :
public class GanttJobs {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws IOException {
FileInputStream in=null;
try {
in = new FileInputStream("C://Users//ABID//Documents//NetBeansProjects//GanttDiagram//M1.txt");
} catch (FileNotFoundException ex) {
Logger.getLogger(GanttJobs.class.getName()).log(Level.SEVERE, null, ex);
}
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String s = br.readLine();
String jobs[]= s.split(",");
for (int i=0 ;i<3;i++) {
String st = jobs[i];
String [] valeurs = st.split("-");
//String[] Tdéb = jobs[0].split("-"); // A enlever !!!!
int Tdéb = Integer.parseInt(valeurs[0]);
int Tfin =Integer.parseInt(valeurs[1]);
String Etat = valeurs[2];
System.out.println("résultats" +jobs[i]);
}
}
}
0-5-V,5-12-A,12-15-D
Voilà le programme que je suis arrivé à éxécuter mais le gros problème c'est que j'ai du renseigner dans la boucle le nombre de jobs que j'ai. Y aura pas un moyen qui me comptera le nombre de jobs que j'ai et après je n'aurai qu'à renseigner ça dans la boucle ?
voici le programme :
public class GanttJobs {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws IOException {
FileInputStream in=null;
try {
in = new FileInputStream("C://Users//ABID//Documents//NetBeansProjects//GanttDiagram//M1.txt");
} catch (FileNotFoundException ex) {
Logger.getLogger(GanttJobs.class.getName()).log(Level.SEVERE, null, ex);
}
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String s = br.readLine();
String jobs[]= s.split(",");
for (int i=0 ;i<3;i++) {
String st = jobs[i];
String [] valeurs = st.split("-");
//String[] Tdéb = jobs[0].split("-"); // A enlever !!!!
int Tdéb = Integer.parseInt(valeurs[0]);
int Tfin =Integer.parseInt(valeurs[1]);
String Etat = valeurs[2];
System.out.println("résultats" +jobs[i]);
}
}
}