Split et String :(

cs_MrDimanche Messages postés 16 Date d'inscription mercredi 25 juillet 2007 Statut Membre Dernière intervention 16 avril 2008 - 16 avril 2008 à 18:25
cs_MrDimanche Messages postés 16 Date d'inscription mercredi 25 juillet 2007 Statut Membre Dernière intervention 16 avril 2008 - 16 avril 2008 à 22:45
voilà, je cherche à spliter une String et pouvoir utiliser la troisième partie impulsa[3], comme par exemple la printer. Mais je ne comprend pas pourquoi cela ne fonctionne pas. J'ai cherché sur internet, sur sun, mais rien à faire je n'ai pas trouvé pourquoi ça ne fonctionne pas. Si quelqu'un pouvait m'aider ce serai génial, voici le petit programme :

FileReader fr = new FileReader(adressedufichier);
BufferedReader br = new BufferedReader(fr);

while((line = br.readLine()) != null)
{
String[] impulsa = line.split("\t",10);
System.out.println(impulsa[5]);
}


br.close();
}

voici une ligne type du fichier :

5 OK impulsa 0 5D110 451CDFAE06

et voici le résultat :

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5
at RGUI.lire(RGUI.java:38)
at RGUI.main(RGUI.java:56)


en fait seul impulsa[0] marche.
Merci d'avance :D

8 réponses

cs_MrDimanche Messages postés 16 Date d'inscription mercredi 25 juillet 2007 Statut Membre Dernière intervention 16 avril 2008
16 avril 2008 à 18:27
FileReader fr = new FileReader(adressedufichier);
BufferedReader br = new BufferedReader(fr);

while((line = br.readLine()) != null)
{
String[] impulsa = line.split("\t",10);
System.out.println(impulsa[5]);
}


br.close();
}
0
cs_MrDimanche Messages postés 16 Date d'inscription mercredi 25 juillet 2007 Statut Membre Dernière intervention 16 avril 2008
16 avril 2008 à 18:28
voici une ligne type du fichier : 5 OK impulsa 0 5D110 451CDFAE06
0
cs_MrDimanche Messages postés 16 Date d'inscription mercredi 25 juillet 2007 Statut Membre Dernière intervention 16 avril 2008
16 avril 2008 à 18:28
et voici le résultat : Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5 at RGUI.lire(RGUI.java:38) at RGUI.main(RGUI.java:56) en fait seul impulsa[0] marche. Merci d'avance :D
0
gmi19oj19 Messages postés 545 Date d'inscription lundi 10 mai 2004 Statut Membre Dernière intervention 28 septembre 2011 2
16 avril 2008 à 18:44
Salut,

Et  tu as quoi dans ce impulsa[0] exactement ?

Sinon remplace ton "\t" par un " " même si je suis pas convaincu... De toute façon, des vrais délimiteurs façon ; : entre autres sont bien plus pratiques qu'une tabulation je pense ^^

gmi19oj19
0

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

Posez votre question
cs_Kysic Messages postés 332 Date d'inscription mardi 12 juillet 2005 Statut Membre Dernière intervention 17 juillet 2010
16 avril 2008 à 19:57
Salut.
Essaie de mettre un test pour voir si ton tableau est assez grand avant l'affichage, parce que là si ton fichier contient une ligne vide (genre à la fin ^^), il est normal que ça plante.
sinon +1 pour remplacer les \t
http://kysicurl.free.fr/
0
cs_MrDimanche Messages postés 16 Date d'inscription mercredi 25 juillet 2007 Statut Membre Dernière intervention 16 avril 2008
16 avril 2008 à 22:04
La String est assurément assez grande car j'avais déjà essayé de l'initialisé à 10. De plus le fichier ne peux pas contenir de ligne vide, et enfin, je n'ai pas eu le choix des séparateurs, les fichiers existent déjà. j'ai déjà essayé de directement mettre une tabulation, ou un espace. En fait le plus étrange je trouve, c'est que impusla[0] j'ai effectivement les bonnes valeurs.
pour le +1, tu veux dire rempacer "\t" par "+1" ?

Merci pour vos réponses.
0
cs_Kysic Messages postés 332 Date d'inscription mardi 12 juillet 2005 Statut Membre Dernière intervention 17 juillet 2010
16 avril 2008 à 22:33
Non je voulais dire que j'étais d'accord (un de plus) pour remplacer les "\t" par " " par exemple.
Sinon aul ieu d'afficher impulsa[5] affiche la longueur du tableau pour voir ce qui se passe.
Je ne comprends pas "La String est assurément assez grande car j'avais déjà essayé de l'initialisé à 10." (en java la taille de String n'est jamais un problème normalement).
0
cs_MrDimanche Messages postés 16 Date d'inscription mercredi 25 juillet 2007 Statut Membre Dernière intervention 16 avril 2008
16 avril 2008 à 22:45
Je me suis mal exprimé, je voulais dire que le tableau de string est assez grand
0