Bonjour tout le monde,

J'essaie de voir si une partie de phrase se trouve dans un fichier txt, si tel est le cas, j'incrémente i de 1.

ça fonctionne très bien quand la phrase recherchée est présente dans le fichier txt et donc trouvée mais quand la phrase n'est pas dans le fichier txt, j'obtiens une erreur :

Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String ind
ex out of range: 8
at java.lang.String.substring(String.java:1441)
at ExFile2.main(ExFile2.java:16)
Press any key to continue...
Voici mon code :

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
import java.io.*;
public class ExFile2 
{
	public static void main (String [] args) throws IOException
	{
		File f = new File ("c:\\bidon.txt");
		FileReader fr = new FileReader(f);
		BufferedReader br = new BufferedReader(fr);
 
		String ARechercher = "SET PATH";
 
		String ligne ="";
		int i=0;
		while((ligne=br.readLine())!=null)
		{
			if (ligne.substring(0,8).equals(ARechercher))
			{
				i++;
			} 
 
		}
 
		System.out.println("i vaut "+i);
 
		br.close();
 
	}
}
Je vous remercie d'avance pour votre aide.

beegees