将CSV文件读入ArrayListjava
学生请求帮助 我有一个CSV文件,格式为studentID、lastName、firstName、finalMark、finalGrade。我试图将其读入Student类型的列表/Student类型的ArrayList-尝试将每一行添加为新的Student。我有一个学生班来整理文件。这个学生类有这五个studentID,lastName,firstName,finalMark,finalGrade作为构造函数 请有人通过代码和/或解释向我演示/演示如何使用FileReader和BufferedReader或second preference Scanner将文件读入列表将CSV文件读入ArrayListjava,java,Java,学生请求帮助 我有一个CSV文件,格式为studentID、lastName、firstName、finalMark、finalGrade。我试图将其读入Student类型的列表/Student类型的ArrayList-尝试将每一行添加为新的Student。我有一个学生班来整理文件。这个学生类有这五个studentID,lastName,firstName,finalMark,finalGrade作为构造函数 请有人通过代码和/或解释向我演示/演示如何使用FileReader和BufferedR
public static ArrayList <String> readAllLinesFromFile(String path) throws IOException {
// System.out.println("Cannot locate input file");
ArrayList<String> studentList = new ArrayList<String>();
FileReader fileReader = new FileReader("Question4unorderedList.csv");
BufferedReader bufferedReader = new BufferedReader(fileReader);
String line = null;
while((line = bufferedReader.readLine())!=null) {
studentList.add(line);
}
bufferedReader.close();
return studentList;
}
所以我可以创建一个String类型的ArrayList。但是如何将这个字符串的ArrayList转换/解析/转换为学生的列表或ArrayList我的学生类构造函数的详细信息在上面
谢谢你的帮助。到目前为止你都尝试了什么?你遇到过什么错误吗?事情不是这样的:你甚至都没有试过去做。互联网上有很多例子。在提出要求之前尝试编码。看看这个——阅读csv可能是一场噩梦。在internet上搜索库并尝试。
import java.io.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Main {
public static void main(String[] args) throws IOException {
List <Student> studentList = new ArrayList <>();
String fileIn = "Question4unorderedList.csv";
String fileOut = "Question4orderedList.csv";
String line = null;
// Read all lines in from CSV file and add to studentList
FileReader fileReader = new FileReader(fileIn);
BufferedReader bufferedReader = new BufferedReader(fileReader);
while ((line = bufferedReader.readLine()) != null) {
String[] temp = line.split(",");
int studentID = Integer.parseInt(temp[0]);
String firstName = temp[1];
String lastName = temp[2];
int finalMark = Integer.parseInt(temp[3]);
String finalGrade = temp[4];
studentList.add(new Student(studentID, firstName, lastName, finalMark, finalGrade));
}
bufferedReader.close();