将自定义对象数组保存到文件中并在java中再次读取?

时间:2014-10-19 11:41:40

标签: java arrays file object save

我想保存一个自定义为文件的对象数组,并在java中的程序启动时将其作为对象数组重新读回。如果我也可以将它保存为JSON,那就太好了。我尝试了一些常用的方法,但是我得到一个错误,说我的数组不是可串行的。

class ArrayOfObjects {

  public static void main (String[] args) throws Exception {

    Students[] studentArray = new Students[3];
    studentArray[0] = new Students();
    studentArray[0].age = 18;
    studentArray[0].name = "Jones";
    studentArray[1] = new Students();
    studentArray[1].age = 21;
    studentArray[1].name = "David";
    studentArray[2] = new Students();
    studentArray[2].age = 15;
    studentArray[2].name = "Jeremy";
  }  

}

class Students {

  int age;
  String name;

}

2 个答案:

答案 0 :(得分:1)

你的班级学生应该实施Serialiazble

答案 1 :(得分:0)

  1. 如果您想将其保存在标准输出中,学生必须实现Serializable。

  2. 如果您想将其保存为JSON,请使用Jackson(http://fasterxml.com/)并将Java bean声明规范化为该类。

    class Students implemenst Serializable {
    
      private int age;
      private String name;
    
      public int getAge() {
          return age;
      }
    
      public void setAge(int age) {
          this.age = age;
      }
    
      public String getName() {
          return name;
      }
    
      public void setName(String name) {
          this.name = name;
      }
    
    }