好的,所以我有这段代码来获取包含这些值的.csv文件。
Alice Jones,80,90,100,95,75,85,90,100,90,92
Bob Manfred,98,89,87,89,9,98,7,89,98,78
我想取名字然后取相应的等级并计算它们的平均值。我坚持的部分实际上是在文件中检索这些值,所以我实际上可以使用它们。我会用什么来读取字符串,以便将整数拉出来?
import java.io.*;
import java.util.*;
public class Grades {
public static void main(String args[]) throws IOException
{
try{
// Open the file that is the first
// command line parameter
FileInputStream fstream = new FileInputStream("filescores.csv");
BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
String strLine;
//Read File Line By Line
while ((strLine = br.readLine()) != null) {
// Print the content on the console
System.out.println (strLine);
}
//Close the input stream
in.close();
}catch (Exception e){//Catch exception if any
System.err.println("Error: " + e.getMessage());
}
}
}
答案 0 :(得分:1)
以下是应该帮助您启动的代码段。
String[] parts = strLine.split(",");
String name = parts[0];
int[] numbers = new int[parts.length - 1];
for (int i = 0; i < parts.length; i++) {
numbers[i] = Integer.parseInt(parts[i+1]);
}
答案 1 :(得分:0)
我建议String#split
将一行的值读入数组:
String[] values = strLine(",");
// debug
for (String value:values) {
System.out.println(value);
}
索引0处的值是名称,其他数组字段包含数字作为字符串,您可以使用Integer#parseInt
将它们转换为整数值。