Comment accéder à des jetons avec Java StringTokenizer?

Je suis en utilisant le Tampon Lecteur à passer les lignes d'un fichier Java StringTokenizer. Le fichier est structurd comme suit:

"2,0";"12345";"foo";"foo.doc"
"2,4";"23456";"foo";"foo.doc";"34567";"foo7";"foo7.doc";"45678";"foo6";"foo6.doc";"56789";"foo5";"foo5.doc";"67890";"foo4";"foo4.doc"   
"3,0";"34567";"foo7";"foo7.doc"
"3,0";"45678";"foo6";"foo6.doc"
"3,0";"56789";"foo5";"foo5.doc"
"3,0";"67890";"foo4";"foo4.doc"

Voici le code que j'utilise jusqu'à présent.

public class parse {
  public static void main(String args[]) {
    FileInputStream inputStream = new FileInputStream("whidata0.txt");
    BufferedReader br = new BufferedReader(new InputStreamReader(inputStream)); 
    while((scrubbedInput=br.readLine())!=null) {
      StringTokenizer strTok = new StringTokenizer(scrubbedInput, ";", false);
      int tokens = strTok.countTokens();
      while (strTok.hasMoreTokens()) {
        tok01 = strTok.nextToken();
      }
      System.out.println("  scrubbed: " + scrubbedInput);
      System.out.println("    tokens: " + tokens);
      System.out.println("     tok01: " + tok01);
    }
  }
}

J'ai besoin d'être en mesure d'attribuer à chaque jeton dans une chaîne de caractères à une variable pour faire des manipulations. Cependant, si je attribuer ces variables dans mon while boucle, l'itération va remplacer mes variables, et ils seront tous de retour avec la même valeur.

Je suis en train de diviser un moyen pour effectuer les opérations suivantes:

String token01 = strTok.tokenNumber(0);
String token02 = strTok.tokenNumber(1);
String token03 = strTok.tokenNumber(2);
String token04 = strTok.tokenNumber(3);
etc.

mais ne peut pas trouver toutes les méthodes dans la Chaîne Tokenizer documentation qui permettra que. Je peux certainement écrire chaque ligne d'un tableau de Chaîne de thisLineOfTokens[] et utiliser une boucle for pour créer String tokenN = thisLineOfTokens[n], mais est-il une méthode plus directe pour accéder à des jetons?

Je suis un peu perdu sur la meilleure façon de référence SPÉCIFIQUE jeton de ma chaîne.

  • N'utilisez JAMAIS de == pour objet de comparaison, l'utilisation .equals()
  • vrai dat, vrai dat...mais je viens de frapper certains pseudo-code & précise que dans mon exemple.
InformationsquelleAutor dwwilson66 | 2013-10-03