Fichier texte vers un tableau

gilardino999 - 21 mars 2013 à 17:12
cs_jojolemariole Messages postés 519 Date d'inscription mercredi 21 mars 2007 Statut Membre Dernière intervention 19 décembre 2016 - 22 mars 2013 à 09:24
Bonjour tout le monde
J'ai un fichier texte du type
D|C:\reports|karrachid|Report Authors|Allowed|FILE_SYNCHRONIZE

D|C:\reports|karrachid|Report Authors|Allowed| FOLDER_ADD_FILE

F|C:\reports\Annual Report.txt|karrachid|john|Denied:|FILE_ALL_ACCESS

F|C:\reports\Annual Report.txt|karrachid|john|Denied:|FILE_READ_DATA

Mon probleme est que je voulais stocker les donnees entre un | dans un tableau mais je n'y arrive pas
voici mon code

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
import java.util.Vector;

class LireLigne
{
@SuppressWarnings("null")
public static void main(String[] argv) throws IOException
{
Vector<String> v = new Vector<String> ();
String ligne = "";
String fichier = "";
BufferedReader clavier = new BufferedReader(new InputStreamReader(System.in));
//preparation de fichier
System.out.println("Quel est le nom de votre fichier ?");
//taper le nom du fichier (fichier.txt)
fichier = clavier.readLine();
BufferedReader ficTexte;
try {
ficTexte = new BufferedReader(new FileReader(new File(fichier)));
do {
//lecture du fchier texte
ligne = ficTexte.readLine();

//affichage du contenu
if (ligne != null) {
//System.out.println(ligne);
StringTokenizer st=new StringTokenizer(ligne, "|");

String s = new String();

//String a;
while(st.hasMoreTokens()){
System.out.println(st.nextToken());
s = st.nextToken();
//v.add(s);
//System.out.println(v);


}

}


}
while (ficTexte != null);
ficTexte.close();
System.out.println("\n");
}


catch (FileNotFoundException e) {
System.out.println(e.getMessage());
} catch (IOException e) {
System.out.println(e.getMessage());
}

}
}

3 réponses

cs_jojolemariole Messages postés 519 Date d'inscription mercredi 21 mars 2007 Statut Membre Dernière intervention 19 décembre 2016 25
21 mars 2013 à 17:50
Salut,

Tu fais 2 fois nextToken :
System.out.println(st.nextToken());
s = st.nextToken(); 


Essaie plutôt avec ça :
s = st.nextToken();
System.out.println(s);
0
gilardino999
21 mars 2013 à 22:15
Salut, Merci mais ce n'est pas ca mon probleme, je veux que les donnees du fichier soient stockés dans un tableau pour que je puisse les récupérer apres.
0
cs_jojolemariole Messages postés 519 Date d'inscription mercredi 21 mars 2007 Statut Membre Dernière intervention 19 décembre 2016 25
22 mars 2013 à 09:24
Salut,

Essaie d'être aussi précis que possible.

Voilà une façon de créer un tableau à partir d'une collection (Vector par exemple) :
Vector<String> v = new Vector<String>();
v.add("1");
v.add("2");

String[] a = new String[v.size()];
v.toArray(a);
0
Rejoignez-nous