lecture de fichier texte et l'attribution des chaînes à partir d'un fichier de variables
J'ai quelques problèmes avec mon code. Je veux être en mesure de lire l'entrée à partir d'un fichier texte et de prendre les cordes de chaque ligne ou entre les espaces et de les affecter à des variables que je vais passer à un objet.
Mon premier problème est que mon programme interprète mal une de mes lignes et omet la première lettre d'une variable, et le deuxième problème c'est que je ne sais pas comment faire mon programme de lecture de deux chaînes sur la même ligne et de les affecter à des variables différentes.
System.out.println("Input the file name of the text file you want to open:(remember .txt)");
keyboard.nextLine();
String filename=keyboard.nextLine();
FileReader freader=new FileReader(filename);
BufferedReader inputFile=new BufferedReader(freader);
courseName=inputFile.readLine();
while (inputFile.read()!= -1) {
fName=inputFile.readLine();
lName=inputFile.readLine();
officeNumber=inputFile.readLine();
}
System.out.println(fName);
Instructor inst=new Instructor(fName,lName,officeNumber);
System.out.println(inst);
inputFile.close();
}
Je ne suis pas très bon à l'aide de filereader et ont essayé d'utiliser le scanner clavier méthode, mais cela m'a mené à bien plus d'erreurs 🙁
De sortie:
Entrée à partir d'un fichier (F) ou le clavier (K):
F
Le nom de fichier du fichier texte que vous souhaitez ouvrir: (rappelez-vous .txt)
test.txt
l'onu bun
l'onu bun a remporté a remporté le numéro de bureau est null
fichier texte:
le professeur messor
bun bun
a gagné a gagné
OriginalL'auteur gucci | 2013-07-16
Vous devez vous connecter pour publier un commentaire.
Vous devez lire une seule ligne avec
readLine()
ensuite, vous dites que vous voulez fractionner avecwhitespace
.De sorte que vous avez à faire quelque chose comme ceci
Ici vous avez un exemple Comment lire un Fichier
OriginalL'auteur nachokk
Lorsque vous appelez
read()
dans l'état de lawhile
boucle, le "curseur" de la BufferedReader avance d'un caractère. Vous ne voulez pas le faire pour vérifier si le flux de données peuvent être lues, vous souhaitez utiliser leready()
méthode.OriginalL'auteur Vyassa Baratham
C'est une autre solution à l'aide de StringTokenizer
OriginalL'auteur nagendra547