public class Student {
private int id;
private String name;
private int age;
public Student(int id, String name, int age) {
super();
this.id = id;
this.name = name;
this.age = age;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "Student [id=" + id + ", name=" + name + ", age=" + age + "]";
}

}
import java.util.*;
import java.io.*;
public class Job2Main {
static final String studentsFileName = "Student.txt";
/*
 * 将List中的Student保存到Student.txt文件中
 * 格式:
 * 一个Student一行,行的格式如下
 * 学号,姓名,年龄
 * Student.txt示例
 * 1,zhang3,20
 * 2,Li4,20
 * 3,Wang5,20
 */
 void saveStudent(List<Student> students) throws Exception {
 List<Student> stuList = new ArrayList<Student>();
 FileWriter writer = new FileWriter(studentsFileName);     
 BufferedWriter bw=new BufferedWriter (writer );
 String temp=null;
 for (Student s : stuList) {          
 bw.write(s.getId());
 bw.write(s.getName());
 bw.write(s.getAge());
 String[] input= temp.split(",");         
 s.setId(Integer.parseInt(input[0]));       
 s.setName(input[1]);          
 s.setAge(Integer.parseInt(input[2]));
 bw.newLine();
       
 }   
 bw.close();         
 writer.close();
 }


/*
 * 读取Student.txt文件中的学生数据,每一行创建一个Student的对象,
 * 多行数据便可以创建多个Student的对象,将这些对象保存到List中
 * Student.txt示例
 * 1,zhang3,20
 * 2,Li4,20
 * 3,Wang5,20
 */
List<Student> loadStudent()throws Exception 
{
 List<Student> stuList = new ArrayList<Student>();
 FileReader Reader = new FileReader(studentsFileName);     
 BufferedReader bR=new BufferedReader (Reader );
for(Student s:stuList){
bR.readLine();
}
 bR.close();         
 Reader.close();
return stuList;
} public static void main(String[] args) throws Exception {
Job2Main job2=new Job2Main();
Student s1=new Student(1, "zhang3", 20);
Student s2=new Student(2, "Li4", 20);
Student s3=new Student(3, "Wang5", 20);
List<Student> stuList=new ArrayList<Student>();
stuList.add(s1);
stuList.add(s2);
stuList.add(s3);
job2.saveStudent(stuList);
List<Student> students=job2.loadStudent();
for(Student s:students){
System.out.println(s);
}
}}真心感谢了啊。

解决方案 »

  1.   

    要写东西到文件直接writer.write("内容");不行?
      

  2.   

    大哥给跪啊,你错误好多啊,你问的问题是出在
    void saveStudent(List<Student> students) throws Exception {
      List<Student> stuList = new ArrayList<Student>();//又生成新的了
    改成 List<Student> stuList =students;
    后面还有点错误你再看看。。
      

  3.   

    bw.close()这个在close之前已经flush了