2009-04-15 6 views
0

J'ai ce code pour analyser une chaîne URL comme "? Var = val" mais quand "search" est juste "var = val" ce code échoue, comment faire juste "var = val" fonctionne aussi?StringTokenizer - première chaîne?

StringTokenizer st1 = 
    new StringTokenizer(search, "?&;"); 
    while(st1.hasMoreTokens()){ 
     String st2= st1.nextToken(); 

     int ii = st2.indexOf("="); 
     if (ii > 0) { 
      int ib = st2.length(); 
      myparms.put(st2.substring(0,ii) , st2.substring(ii+1,ib)); 
     } 
    } 
+0

Désolé, ce code * ne * échoue pas. Pourriez-vous fournir un SSCCE (http://www.sscce.org) qui montre comment cela échoue? –

+0

Cela fonctionne pour moi aussi. si poss fournit l'erreur. – Nrj

Répondre

0
 if (search.charAt(0)!= '?') search = "?"+search; 
1

Comme une note de côté, StringTokenizer a été dépréciée et est inclus seulement maintenant en tant que classe d'héritage, vous devriez jeter un oeil à String.split(), au lieu.

+0

StringTokenizer non encore déprécié, mais son utilisation n'est pas encouragée. –

Questions connexes