Java.util.StringTokenizer

hello all,

Bon j ai une String style
"127.0.0.1 notepad.exe HKEY_LOCAL_MACHINE\\Software\\TestReg\\Txt3"

je voudrai recuperer dans 2 string differenetes
"HKEY_LOCAL_MACHINE\\Software\\TestReg"
et
"Txt3"

le format sera toujours le meme...

je c que java.util.StringTokenizer me permet de placer des delimiteur en faisant un truc du genre...

StringTokenizer(ma chaine,"les delimiteur", un booleel que je sais pas a quoi il sert)..
bon voila en fait j ai un peu la flemme de chercher alors quelqu'un pourrai pas me filer un bour de code avec un exemple de l utilisation de cette classe merci beaucoup... (la flemme car j ai plein d autre prob a reglé...)
Merci beaucoup les gars ( est les filles bien entendu ;-) )

4 réponses

  1. Contributeur
    Bonjour ou Bonsoir,

    SI tu veux recuperer a chaque fois a partir du HKEY ....
    --> tu prends la sous-string qui commence a partir de HKEY

    Apres tu split en fonction de tes \\
    puis tu prends la derniere partie.

    JSS.je.regarde.vite.fais.et.je.te.donne.les.bonnes.methodes.++
    1. Contributeur
      oui ca j avais bien compris ;-)
      c etait surtout comment utiliser comment manipuler stringtokeniser...
      bon finalement j ai u moinsla flemem queje ne pensai..donc j ai fait ca.. et a priori ca fait ce que je vaux...
      StringTokenizer st = new StringTokenizer(commande);
      			//dans keyname nous aurons le nom de lma clé  à lire
      			keyname = null;
      			while (st.hasMoreTokens()) 
      			{
      				keyname = st.nextToken("\\");
      			}
      			//recuperation du chemin
      			StringTokenizer st1 = new StringTokenizer(commande);
      			String keypathtemp=null;
      			while (st1.hasMoreTokens()) 
      			{
      				keypathtemp = st1.nextToken(" ");
      			}
      			StringTokenizer st2 = new StringTokenizer(keypathtemp);
      			String elementpath = null;
      			keypath = "";
      			int nbelem=0;
      			while (st2.hasMoreTokens()) 
      			{
      				elementpath = st2.nextToken("\\");
      				if(!elementpath.equals(keyname))
      				{
      					if(nbelem!=0)keypath=keypath+"\\";
      					keypath = keypath + elementpath;
      				}
      				nbelem++;
      			}
      


      doit sans doute y avoir plus rapide et plus simple mais bon voila j suis pressé..si quelqu'un veut s amuser a optimiser bien..have fun j suis toujours preneur ^^
      1. Contributeur
        String maVariable;

        //variables pour le splitage
        String [] decoup1;
        String [] decoup2;

        // variables resultats
        String hkey;
        String endHkey;

        //variables temp
        String temp;

        decoup1 = maVariable.split(" ");
        temp = decoup1[decoup1.length()];
        decoup2 = temp.split("\\");
        hkey = decoup2[0];
        endHkey = decoup2[decoup2.length()];

        voila.

        a l'indice pres de la variable je pense que ca doit marcher.

        ++

        JSS
        1. Contributeur
          voila une proposition sans les tokenizer ...

          je pense que ca marche :-)

          ++

          JSS
      2. Contributeur
        merci
        je testerai ce soir..si j ai le temps..
        mais effectivement si ca marche ca va plus vite...;-)
        1. Contributeur
          par contre ca marche pas si tu as un espace dans ton path, style HKEY\\Mes Doc\\...

          d'ailleurs je sais pas si le tient fonctionne dans ces cas là (a pas trop regarder)

          JSS.:-(