我在编程作业上遇到问题。我需要从 txt 文件中读取数据并将其存储在并行数组中。txt 文件内容的格式如下:
Line1: Stringwith466numbers
Line2: String with a few words
Line3(int): 4
Line4: Stringwith4643numbers
Line5: String with another few words
Line6(int): 9
注意:“Line1:”、“Line2:”等仅用于显示目的,实际上不在 txt 文件中。
正如你所看到的,它以三个模式进行。txt 文件的每个条目是三行,两个字符串和一个 int。
我想将第一行读入一个数组,第二行读入另一个,第三行读入一个 int 数组。然后将第四行添加到第一个数组中,将第 5 行添加到第二个数组中,将第 6 行添加到第三个数组中。
我试图为此编写代码,但无法正常工作:
//Create Parallel Arrays
String[] moduleCodes = new String[3];
String[] moduleNames = new String[3];
int[] numberOfStudents = new int[3];
String fileName = "myfile.txt";
readFileContent(fileName, moduleCodes, moduleNames, numberOfStudents);
private static void readFileContent(String fileName, String[] moduleCodes, String[] moduleNames, int[] numberOfStudents) throws FileNotFoundException {
// Create File Object
File file = new File(fileName);
if (file.exists())
{
Scanner scan = new Scanner(file);
int counter = 0;
while(scan.hasNext())
{
String code = scan.next();
String moduleName = scan.next();
int totalPurchase = scan.nextInt();
moduleCodes[counter] = code;
moduleNames[counter] = moduleName;
numberOfStudents[counter] = totalPurchase;
counter++;
}
}
}
上面的代码不能正常工作。当我尝试打印出数组的一个元素时。它为字符串数组返回 null,为 int 数组返回 0,这表明读取数据的代码不起作用。
任何建议或指导都非常感谢,因为它在这一点上变得令人沮丧。