Ich bin gestolpert. Ich arbeite an einem Projekt für den Unterricht und für das Leben von mir kann ich nicht herausfinden, mehrere Arrays aus einer Textdatei zu erstellen. Ich habe herumgesucht, aber die meisten Methoden, die ich gelesen habe, sind unpräzise. Ich bin in der Lage, die Datei in ein Array erfolgreich zu beschaffen, aber versuchen, ein Array über hasNext und nextLine zu erstellen, gibt mir nur Null Daten. Irgendwelche Zeiger?Mehrere Arrays aus Textdatei
public static void main (String [] args) throws FileNotFoundException {
int count = 0;
double sum = 0;
String inputfile = "input.txt";
File filename = new File (inputfile);
Scanner console = new Scanner(filename);
ArrayList<String> list = new ArrayList<String>();
while (console.hasNext()) {
list.add(console.nextLine());
}
Scanner user = new Scanner (System.in);
System.out.println("Please verify file before moving forward.");
String fileverify = user.nextLine();
String line = "";
if (fileverify.equals("input.txt")) {
System.out.println("File is available.\n");
}
else {
System.out.println("Wrong file. Please try again.");
return;
}
System.out.println(list);
String[] studentNames = new String [count];
int[]studentIDs = new int[count];
double[]studentScores = new double[count];
count++;
while(console.hasNext()){
studentNames[count] = console.nextLine();
studentIDs[count] = console.nextInt();
studentScores[count] = console.nextDouble();
}
System.out.println("Would you like to:\n" +
"\n1. Print average" +
"\n2. Print high score"+
"\n3. Print low score"+
"\n4. Print median"+
"\n5. Print all student names and scores"+
"\n6. Exit\n");
String command = user.next();
int nextInt = console.nextInt();
if (user.equals("1")){
count++;
sum = sum + console.nextInt();
System.out.println("The average is : " + sum/count) ;
}
}
Textdatei sieht so aus.
Class size 37
Leland Fitzgerald:83629:94.7
Marilyn A. Stanley:91602:18.8
Sergio Jones:24914:96.4
Mona Hines:62909:30.6
Brian Little:12713:17.7
Iris Logan:84645:97.8
Alonzo Strickland:2913:19.7
Edith Richards:78585:53.9
Marianne Wheeler:30544:77.0
Viola Walton:76264:78.2
Lyle Houston:7617:70.0
Sheldon Jim Ford:53185:29.0
Ivan Carlson:40732:84.5
Aaron Ramsey:12392:71.3
Katherine Townsend:30999:34.9
Wilbert Vargas:76095:01.9
Erick Gibson:47420:98.9
Audrey Ward:32662:88.9
Lynda Cain:48951:88.7
Allison Patrick:72177:61.6
Cecelia Griffith:14614:08.5
Monique Mccoy:711:85.3
Maureen Alvarado:14961:00.1
Holly Morris:77959:26.5
Justin Parks:48615:40.0
Ellis Mcbride:26184:35.4
Forrest Weber:12330:84.3
Myron Blake:77705:78.7
Bob Goodman:31072:77.9
Jon Foster:12913:76.4
Alexis Zimmerman:76866:24.2
Melissa Warner:85395:70.8
Rodolfo Moreno:32141:92.6
Leah Maxwell:49734:39.5
Sandy Carpenter:36441:43.5
Kara Robertson:26797:88.8
Shelly Casey:65599:67.6
Können Sie klären, welche Ausgabe Sie versuchen zu erhalten? Ist es ein Array von Zeilen, wobei jede Zeile ein Array der Wörter dieser Zeile ist? – Mureinik
Versuchen Sie nicht, ein Array von Zeilen zu erhalten. Mehr noch, ich versuche nur, das Array (Textdatei) in den Compiler zu laden, damit ich die Daten so ausgeben kann, wie es im Code steht. – oto