Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionlire.memory(1)pour lire la première ligne... tout va bien...
lire.memory(2)pour lire la seconde ligne... ça marche plus...
import java.io.*; import java.util.StringTokenizer; public class Lecture3 { private String fileName; private int nTokens; private double[] before; private double[] after; public Lecture3(String name) throws Exception { fileName = name; BufferedReader in = new BufferedReader(new FileReader(fileName)); } private void history() throws Exception { BufferedReader in = new BufferedReader(new FileReader(fileName)); StringTokenizer st = new StringTokenizer(in.readLine()); nTokens = st.countTokens(); } public void memory(int num_line) throws Exception { memoryBefore(num_line); } private double[] memoryBefore(int line) throws Exception { BufferedReader in = new BufferedReader(new FileReader(fileName)); Reader r = new BufferedReader(in); StreamTokenizer str = new StreamTokenizer(r); history(); // récupérer le nombre d'éléments System.out.println("nombre d'éléments: "+nTokens); before = new double[nTokens-2]; int i=0; // indice du tableau try { int line_number = str.lineno(); // numéro de la ligne while(line_number != line) { str.nextToken(); } // end of while(line_number != line) if (line_number == line) { while((str.nextToken() != StreamTokenizer.TT_EOL)) { switch (str.ttype) { case StreamTokenizer.TT_NUMBER: // TEST // System.out.println("number: "+str.nval+" line "+ line_number); before[i]=str.nval; System.out.println("before["+i+"]= "+before[i]); i++; break; case StreamTokenizer.TT_WORD: // TEST // System.out.println("word: "+str.sval); break; default: System.out.println("Erreur"); break; } // end of Switch() } // end of while } // end of if (line_number == line) } // end of try catch (Exception e) { // System.out.println("Exception : "+e); } return before; } // end of memoryBefore() } // end of class
while(line_nulber ! line) { line_number = str.lineno(); //mise à jour numéro de ligne str.nextToken(); }