首先创建Student类
public class Student {
private String name;
private String sex;
private Integer age;
public Student() {
}
public Student(String name, String sex, Integer age) {
this.name = name;
this.sex = sex;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", sex='" + sex + '\'' +
", age=" + age +
'}';
}
}
其次利用ArrayList进行Student类的存储(其实也可以用数组,不过为了加深个人对ArrayList的印象所以强制用ArrayList进行存储)
//利用ArrayList进行存储数据
Student student = new Student("huang", "男", 23);
Student student1 = new Student("lian", "女", 22);
Student student2 = new Student("liu", "男", 23);
ArrayList<Student> arrayList = new ArrayList<>();
arrayList.add(student);
arrayList.add(student1);
arrayList.add(student2);
接着利用FIle类进行文档的创建
//创建file.txt文件
File studentFile = new File("D:/student.txt");
if (studentFile.createNewFile()) {
System.out.println("创建文件成功");
}
再利用BufferedWriter将Student类对象数据输入文档中
//将Student对象输出到file.txt文件中
FileWriter fileWriter = new FileWriter(studentFile);
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
try {
Iterator<Student> iterator = arrayList.iterator();
while (iterator.hasNext()) {
Student next = iterator.next();
bufferedWriter.write(next.toString());
bufferedWriter.newLine();
}
} finally {
bufferedWriter.flush();
bufferedWriter.close();
}
接着再用BufferedReader对文档进行读取
//再从file.txt文件读取出数据
FileReader fileReader = new FileReader(studentFile);
BufferedReader bufferedReader = new BufferedReader(fileReader);
try {
System.out.println("studentFile.txt文件里面的数据是:");
while (bufferedReader.ready()){
System.out.println(bufferedReader.readLine());
}
}finally {
bufferedReader.close();
fileReader.close();
}
整个代码如下
import java.io.*;
import java.util.ArrayList;
import java.util.Iterator;
public class Demo2 {
public static void main(String[] args) throws IOException {
//利用ArrayList进行存储数据
Student student = new Student("huang", "男", 23);
Student student1 = new Student("lian", "女", 22);
Student student2 = new Student("liu", "男", 23);
ArrayList<Student> arrayList = new ArrayList<>();
arrayList.add(student);
arrayList.add(student1);
arrayList.add(student2);
//创建file.txt文件
File studentFile = new File("D:/student.txt");
if (studentFile.createNewFile()) {
System.out.println("创建文件成功");
}
//将Student对象输出到file.txt文件中
FileWriter fileWriter = new FileWriter(studentFile);
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
try {
Iterator<Student> iterator = arrayList.iterator();
while (iterator.hasNext()) {
Student next = iterator.next();
bufferedWriter.write(next.toString());
bufferedWriter.newLine();
}
} finally {
bufferedWriter.flush();
bufferedWriter.close();
}
//再从file.txt文件读取出数据
FileReader fileReader = new FileReader(studentFile);
BufferedReader bufferedReader = new BufferedReader(fileReader);
try {
System.out.println("studentFile.txt文件里面的数据是:");
while (bufferedReader.ready()){
System.out.println(bufferedReader.readLine());
}
}finally {
bufferedReader.close();
fileReader.close();
}
}
}