Java 使用arraylist读取和写入文本文件

Java 使用arraylist读取和写入文本文件,java,io,arraylist,Java,Io,Arraylist,将文本文件读入具有多种数据类型的arraylist时遇到问题 文件格式如下所示: Name1 900 20 Name2 750 30 Name3 880 25 Name4 260 15 我的列表格式是name+score+age,我不知道如何将txt中的数据正确地存储到列表中。另外,我想在添加一些数据后重写文件。您可以创建一个封装name+score+age的类,并创建该类的ArrayList。您可以创建一个封装name+score+age的类,并创建该类的ArrayList,如果列表接

将文本文件读入具有多种数据类型的arraylist时遇到问题

文件格式如下所示:

Name1 900 20

Name2 750 30

Name3 880 25

Name4 260 15

我的列表格式是
name+score+age
,我不知道如何将txt中的数据正确地存储到列表中。另外,我想在添加一些数据后重写文件。

您可以创建一个封装name+score+age的类,并创建该类的
ArrayList

您可以创建一个封装name+score+age的类,并创建该类的
ArrayList
,如果列表接受字符串:

BufferedReader reader = new BufferedReader(new FileReader("yourfile.txt"));
List<String> list = new ArrayList<>();
String line=null;
while((line= reader.readLine())!=null) {
list.add(line);
}
现在,您的列表将是:

   List<SomeClass> list = new ArrayList<>();

如果您的列表接受字符串:

BufferedReader reader = new BufferedReader(new FileReader("yourfile.txt"));
List<String> list = new ArrayList<>();
String line=null;
while((line= reader.readLine())!=null) {
list.add(line);
}
现在,您的列表将是:

   List<SomeClass> list = new ArrayList<>();

谢谢那正是我需要的。所以字符串[]arr=line.split(\\s+);这部分是拆分空白?@sblck yepp,
\\s
是空白的正则表达式:)谢谢。那正是我需要的。所以字符串[]arr=line.split(\\s+);这部分是拆分空白?@sblck yepp,
\\s
是空白的正则表达式:)