StringTokenizer - Java - Programmation
Marsh Posté le 25-11-2008 à 15:08:31
j'ai lu une fois dans la doc, je crois, que StringTokenizer est deprecated et qu'il faut désormais utiliser la méthode split de la classe String.
Marsh Posté le 25-11-2008 à 15:10:12
Si j'ai une fonction nextElement. voici le bout de code :
StringTokenizer tok = new StringTokenizer (ligne,"" ); while (tok.hasMoreTokens()) {
dico.ajouterMot(nextToken(tok),dico.racine);
}
Probleme c'est que Java me donne l'erreur suivante : The method nextToken(StringTokenizer) is undefined for the type Main
Concernant split, ça renvoit un tableau de string
Merci de vos réponses en tout cas
Marsh Posté le 25-11-2008 à 17:30:41
Citation : new StringTokenizer (ligne,"" ); |
et c'est quoi ton/tes délimiteurs ? parce que là tu n'en fournis aucun donc j'imagine que tu vas te retrouver avec un seul token par ligne...
Citation : dico.ajouterMot(nextToken(tok),dico.racine); |
...
http://java.sun.com/javase/6/docs/ [...] nizer.html
Marsh Posté le 25-11-2008 à 17:55:16
Citation : new StringTokenizer (ligne,"" ); |
et c'est quoi ton/tes délimiteurs ? parce que là tu n'en fournis aucun donc j'imagine que tu vas te retrouver avec un seul token par ligne...
Les délimiteurs sont uniquement les "espaces" donc je pense qu'il faut mettre :
StringTokenizer tok = new StringTokenizer (ligne," " );
Citation : dico.ajouterMot(nextToken(tok),dico.racine); |
Concernant cela, c'était plus par désespoir . Le gros et unique problème est de transformer les StringTokenizer en String normal que je pourrais utiliser dans ma fonction.
Pour info, le projet consiste à créer un vérificateur d'orthographe sous la base des arbres de type "trie".
Marsh Posté le 25-11-2008 à 18:50:36
DjeXtoR a écrit :
|
faut faire trois choses alors : lire les réponses qu'on te donne, lire la doc, la comprendre.
Marsh Posté le 26-11-2008 à 00:33:42
Ta boucle est bonne, il suffit juste de bien utiliser le tokenizer pour récupérer les mots d'une ligne
Citation : StringTokenizer tok = new StringTokenizer (ligne," " ); |
Marsh Posté le 26-11-2008 à 00:42:38
Sinon, concernant la remarque comme quoi StringTokenizer est deprecated (il y a une note à ce propos dans la doc), pour ma part je continue à utiliser StringTokenizer dans les cas simples.
C'est vrai que le split est puissant grâce aux expressions régulières mais la plupart du temps, ça revient à utiliser un bazooka pour tuer un moustique
Marsh Posté le 25-11-2008 à 14:55:05
Salut tout le monde,
Je vous explique le contexte de mon programme : je dois utiliser un fichier .txt pour en tirer les mots et leur appliquer une fonction ajouterMot (String).
Au niveau de la lecture du fichier je n'ai pas de problème.
J'ai ensuite utilisé la fonction StringTokenizer pour "découper les lignes lues".
Le problème est que StringTokenizer n'est pas un vrai String et je ne peux pas utiliser ma fonction ajouterMot...
J'ai testé la fonction split mais celle ci rend un tableau de String...
Merci d'avance de votre aide
DjeXtoR