Bonjour,

Je voudrais faire une méthode qui soit capable de lire un fichier, puis d'ajouter à un vecteur le contenu de le commentaire trouvé
depuis son début ("/**") et jusqu'à sa fin ("*/"). Mais j'avoue que j'ai un peu du mal avec l'agorithme
Je sais lire un fichier ligne par ligne
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
try 
              {
			File file = new File(fileName);
			FileReader reader = new FileReader(file);
			BufferedReader in = new BufferedReader(reader);
			String line;
			while ((line = in.readLine()) != null) 
			{
 
			}
			in.close();
		} 
                 catch (IOException e) 
                {
			e.printStackTrace();
		}
je sais détecter le début d'un commentaire (façon porka certes mais j'en ai besoin rapidement)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
if(line.lastIndexOf("/**")!=-1) // début du commentaire
je sais détecter le milieu d'un commentaire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
if(line.lastIndexOf("*")!=-1)
je sais détecter la fin d'un commentaire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
if(line.lastIndexOf("*/")!=-1)
ce que je fais c'est que j'ajoute la ligne ainsi retournée dans un vecteur, mais comment je suis dans une boucle, j'ai pas le commentaire(du début à la fin) dans une case du vecteur, mais le début dans une case, le milieu dans la suivante (et d'autre tant qu'il y a un milieu), et puis la fin dans une autre case.
Mais je voudrais récupérer le commentaire en entier

Je vous pas comment je peux faire, auriez vous des idées pour moi ?

EDIT : Je pense que je suis pas assez explicite, j'ai fais ça
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
package com.datalion.ant.plugin;
 
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.Hashtable;
 
/**
 * This class is supposed to extract comment from files
 * 
 * @author Marwan Rabbaa
 * @version 1.0 beta 1
 * @since 21/03/08
 * 
 */
public class Reader 
{
	private static void readFile(String fileName) 
	{
		Hashtable <Integer, String> comments = new Hashtable<Integer, String>();
		try {
			File file = new File(fileName);
			FileReader reader = new FileReader(file);
			BufferedReader in = new BufferedReader(reader);
			String line;
			while ((line = in.readLine()) != null) 
			{
				String string = line.trim();
				String comment = "";
				Integer i = new Integer(0);
				if(string.lastIndexOf("/**")!=-1)
				{
					comment = string;
				}
				else if(string.lastIndexOf("*")!=-1)
				{
					comment += string;
				}
				else if (string.lastIndexOf("*/") != -1) 
				{
					comment += string;
				}
				System.out.println("---DEBUT--- ");
				System.out.println(comment);
				System.out.println("---FIN--- ");
			}
			in.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
		System.out.println(comments);
	}
 
	public static void main(String[] args) {
		readFile("/Documents and Settings/mrabbaa/"
				+ "Mes documents/workspace/skyrecon/class/org.skyrecon.handler.FileHandler.php");
	}
}
mais voila chaque ligne est un commentaire, ce que je voudrais c'est détecter les commentaires sur plusieurs lignes