• Besoin d'aide ? Publiez votre question
  • Publier
Publicité

Les derniers tests

Test : Nokia N97, un vrai clavier, du Wi-Fi, un grand écran tactile...

Test : Nokia N97, un vrai clavier, du Wi-Fi, un grand écran tactile...

Publié le 29 juin 2009

Caractéristiques Capteur photo 5 MégapixelsPoids 150 grammesDimensions 11,7 x 5,5 x 1,6 cmAutonomie en communication 5h20Autonomie en veille 400 heuresMémoire interne 32 G0Mémoire externe  Micro SD (48 Go)Indice DAS -Nokia présente son N97 comme 'Lire la suite

Disques durs : les performances suivant les générations

Disques durs : les performances suivant les générations

Publié le 29 juin 2009

A quel rythme évoluent les disques durs ? Le passage d’une génération à une autre est-il vraiment justifié sur le plan des performances, de la consommation et du rendement ? Pour le savoir, nous avons comparé 3 générations successives de disques durs.Lire la suite

Les bonnes raisons pour ne pas passer à l'iPhone 3G S

Les bonnes raisons pour ne pas passer à l'iPhone 3G S

Publié le 26 juin 2009

L'iPhone 3G S vaut-il vraiment son prix ou bien peut-on encore se contenter d'un ancien modèle 3G ?Lire la suite

10 To pour 700 € : le RAID ultime ?

10 To pour 700 € : le RAID ultime ?

Publié le 26 juin 2009

Les SSD semblent se présenter comme le nec plus ultra de la solution de stockage, mais ils ne fournissent pas une capacité suffisante. Nous avons voulu voir de ce que vous pourriez obtenir pour 700 € si vous décidiez d'investir dans 12 disques de 1 To.Lire la suite

voir tout
Tom's Hardware > Forum > Programmation > C / C++ / Java > StreamTokenizer et delimiteur

StreamTokenizer et delimiteur

Tomshardware : 1,4 millions d'inscrits dans 6 pays différents répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Salut à tous
je suis débutant en java, j'implémente un soft qui parse des donnes dans un fichier pour les réécrire dans un second fichier avec quelques modifications.
Je parse ce fichier avec la classe Streamtokenizer et j'aimerais mettre comme délimiteur le caractère '-', comme ça lorsqu'il tombe sur '-' il passe au token suivant en sachant que le signe '-' fait partie de ce dernier.
J'ai vu qu'il existe une classe StringTokenizer qui prend en compte l'ajout de délimiteur dans son constructeur, mais je préfèrerais utiliser streamtokenizer.
Merci pour votre aide
++

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

bha si ya pas, ya pas...
fait avec ce qui est dispo :spamafote:

------------------------------ Da Bidz Triad©®™: Bidz Interceptor
.:: Smileyz version 4.2 [050625]::. -- Code source disponible sous licence GPL.
[u
Répondre à KangOl

Je me suis résigné à utiliser StringTokenizer

j'ai une liste de chiffres (3 chiffres par ligne) et il y a un paquet de ligne.
Comme je dois à chaque fois intervertir les valeurs 2 par 2, j'ai décidé de créer tableau de String de 6 éléments (qui contient donc les chiffres de deux lignes). et faire une boucle juqu'à la fin des token.
Voici le code


Code :
  1. BufferedWriter bw = new BufferedWriter(new FileWriter(f_sysnoise,true));
  2. String lin=br.readLine();
  3. System.out.println(lin);
  4. String vec[]= new String[6];
  5. while(lin!=null){
  6. StringTokenizer stt = new StringTokenizer(lin," -",true);
  7. while(stt.hasMoreTokens()){
  8. String mot=stt.nextToken();//le 1er ne sert à rien
  9. System.out.println(mot);   
  10. for (int i=0;i<6;i++) {
  11. mot=stt.nextToken();
  12. vec[i]=mot;
  13. bw.write(vec[1] +" "+ vec[0] +" "+ vec[3] +"\n"+ vec[2] +" "+ vec[5] +" "+ vec[4] + "\n" );
  14. System.out.println("mot"+i +" "+ mot);
  15. }
  16. }




il compile sans probleme mais à l'exécution, dans la console, j'ai bien le 1er token que je capture pas; ensuite j'ai les 3 prochains et ca s'arrete.
Qu'en pensez-vous?

J'ai deux autres questions:
Est ce qu'il faudra que je vide le tableau de String à chaque fois qu'il sera rempli ou pas ?
En ce qui concerne les délimiteurs, j'ai ajouté true à l'instruction car le signe '-' est un délimiteur mais il doit apparaitre dans la capture. Comme l'espace est aussi un délimiteur, il va me mettre également un espace dans la capture.. en toute logique ??
(en fait le signe '-' correspond au signe négatif, donc des fois c'est négatif et des fois positif)

Merci beaucoup
++

Répondre à onclejules

tu pourrais pas indenter ton code ?

------------------------------ Da Bidz Triad©®™: Bidz Interceptor
.:: Smileyz version 4.2 [050625]::. -- Code source disponible sous licence GPL.
[u
Répondre à KangOl

:ouch: :ouch: :ouch:
y'a que 16 lignes ... c'est relativement lisisble ... :whistle:


Code :
  1. BufferedWriter bw = new BufferedWriter(new FileWriter(f_sysnoise,true)); 
  2. String lin=br.readLine(); 
  3. System.out.println(lin); 
  4. String vec[]= new String[6]; 
  5. while (lin != null) {
  6.     while(stt.hasMoreTokens()) {
  7.         for (int i=0; i<6; i++) {
  8.             String mot=stt.nextToken();
  9.             vec[i]=mot;
  10.         }
  11.         bw.write(vec[1] +" "+ vec[0] +" "+ vec[3] +"\n"+ vec[2] +" "+ vec[5] +" "+ vec[4] + "\n" );
  12.     }
  13. }

Répondre à onclejules

ta premieres boucle while est bizarre

tu n'y réaffecte pas lin...
et tu as sauté des lignes quand tu as indenté...

------------------------------ Da Bidz Triad©®™: Bidz Interceptor
.:: Smileyz version 4.2 [050625]::. -- Code source disponible sous licence GPL.
[u
Répondre à KangOl
Tom's Hardware > Forum > Programmation > C / C++ / Java > StreamTokenizer et delimiteur
Aller à :

Il y a 340 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois. Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre. Répondre Annuler
Annonces Google