Bonjours je voudrai lire dans un fichier txt plusieurs infos
Mais voilà mon problème mon programme lis lis lis lis mais en gros s'arrête pas Comment peut t'on faire pour lui dire la il n'y a rien écrit arrête toi !
Voici mon programme qui fait ça :
String fichier[] = new String[3];
int someThing = 0;
fichier[someThing] = Isn.readStringFromFile(canal);
while ( fichier[someThing] !=""){
System.out.println(fichier[someThing]);
someThing++;
fichier[someThing] = Isn.readStringFromFile(canal);}
la fonction Isn.readStringFromFile(canal) sert simplement a lire la ligne.
voici le message d'erreur qu'il me met je pense qu'il me dis en gros qu'il n'y a plus de place dans le tableau :
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3
- Edité par NutNut tu coco 29 avril 2016 à 15:10:07
Quand tu regardes l'abîme, l'abîme regarde aussi en toi.
Il semble logique que le programme lève une ArrayIndexOutOfBoundsException, étant donné que tu testes fichier[someThing] en incrémentant sometThing ! Il arrive un moment ou tu sors du tabeau. Pour lire un fichier texte, ça ressemblerai plus a ça
//lecture du fichier texte
try{
InputStream ips=new FileInputStream("ton_fichier.txt"); //ouverture d'un flux d'entree sur ton fichier
InputStreamReader ipsr=new InputStreamReader(ips); //creation d'un lecteur du fichier, a partir du flux
BufferedReader br=new BufferedReader(ipsr); //creation d'un buffer pour lire le fichier
String ligne;
while ((ligne=br.readLine())!=null) //tant qu'on recupere qqc avec readLine() : cad que le resultat de chaque ligne, une par une, sera stockee dans ligne
{
//Ici tu traites ta lignes comme il te convient
}//arret quand toutes les lignes ont ete parcourues
br.close(); //on n'oublie pas de fermer le buffer
}
catch (Exception e)
{
//traitement de l'exception si celle-ci est survenue
}
Lecture D'un fichier txt via Java
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.