J'essaie de faire une tâche très simple mais je n'obtiens pas les résultats que je veux. J'ai un fichier texte avec des noms séparés par une virgule sur plusieurs lignes et je veux stocker cette information dans un tableau 1D. Lorsque j'exécute mon code et que j'essaie d'imprimer le tableau pour m'assurer que mes informations ont été enregistrées, la console n'imprime que la dernière ligne du fichier texte. Quel est le problème avec mon code? J'ai essayé de jouer avec mais j'ai trouvé aucune solution à mon problème. L'information est-elle écrasée?Lire un fichier dans Java en utilisant StringTokenizer
import java.util.*;
public class Tokens {
public static TextFileInput myFile;
public static StringTokenizer myTokens;
public static String name;
public static String[] names;
public static String line;
public static void main(String[] args) {
myFile = new TextFileInput("namesofstudents.txt");
while ((line = myFile.readLine())!= null) {
int i=0;
myTokens = new StringTokenizer(line, ",");
names = new String[myTokens.countTokens()];
while (myTokens.hasMoreTokens()){
names[i] = myTokens.nextToken();
i++;
}
}
for (int j=0;j<names.length;j++){
System.out.println(names[j]);
}
}
}
exemple d'entrée:
Mark, Joe, Bob
James, Jacob, Andy, Carl
sortie:
James
Jacob
Andy
Carl
merci, il a finalement compris ood it! – user23429