Ajouter un commentaire

melie

Oui en fait dans l'extrait du fichier sql que j'ai mis on ne voit pas d'exemple avec "date".

Bon là je comprend pas! :evil:

Voici mon code :

ligne = br.readLine();
ligne = ligne.trim(); 
int j=0;
String repereAttribut= "`";
while (ligne.startsWith(repereAttribut)) {

    // La ligne commence par "`" : c'est un attribut
    System.out.println("Un attribut a été trouvé");
		        		    
    // On recupere le nom de l'attribut qui est compris entre "`" et "` "
    int motifAtt = ligne.indexOf("` ");
    String nomAttribut = ligne.substring(repereAttribut.length(), motifAtt);
		                
     // On recupere le type de l'attribut compris entre le nom de l'attribut et " "
    String repereType ="`"+nomAttribut+"` ";
	                		
    int motifType = ligne.indexOf(" ");
	                			                		
             		
    String typeAttribut = ligne.substring(repereType.length(), motifType);

	               		 
    System.out.println("Nom de l'attribut : " + nomAttribut); 
    System.out.println("Type de l'attribut : " + typeAttribut); 

    j++;

Donc en fait je suis ton conseil, j'enleve les espaces de debut et de fin de la ligne.
Ensuite je regarde si la ligne commence par "`" et dans ce cas je recupere le nom de l'attribut qui est donc compris entre "`" et "` ".

Ensuite je veux son type (int(22) ou date ou autre...).

Le type est compris entre le nom et " " (espace) d'apres la configuration de la ligne.

C'est donc ce que je fais dans mon code.
Et là comme on a enlevé les espaces de debut et de fi, ca ne devrait pas poser de probleme. (mon probleme de tout à l'heure etait qu'il prenait le premier espace qu'il trouvait et non pas celui dont j'avais besoin :) ).

Je pensais donc que ca allait marcher, mais non et je vois pas pourquoi là.

CAPTCHA
Cette question permet de vérifier que vous n'êtes pas un robot spammeur :-)
  GGG   M   M  TTTTTT  X   X   GGG  
G MM MM TT X X G
G GG M M M TT X G GG
G G M M TT X X G G
GGG M M TT X X GGG