Salut,
Voici mon code, je lis un fichier ligne par ligne et si la ligne commence par "EXSTRS01" je récupére une partie de la chaine
mais j'ai l'exeption suivante
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 package génératorBis; import java.io.BufferedReader; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.io.PrintWriter; import java.util.StringTokenizer; public class Div { public static void main (String[] args) throws IOException { BufferedReader input = new BufferedReader(new FileReader("D:\\RELEVE28112014.txt")); PrintWriter pt = new PrintWriter (new FileWriter ("D:\\AttijariGenerator\\s.txt")); String l=input.readLine(); while (l!=null){ if (l.substring(0,8).startsWith("EXSTRS01")){ StringTokenizer st = new StringTokenizer(l, "|"); int i =0; while (st.hasMoreElements()) { if (i ==47){ pt.println((String) st.nextElement()); } i=i+1; String s = (String) st.nextElement(); } } l=input.readLine(); } pt.close(); input.close(); }}
malgre que tous les lignes contiennent plus que 8 caractéres!!Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 8
at java.lang.String.substring(Unknown Source)
at génératorBis.Div.main(Div.java:22)
aidez moi svp
Partager