Java-将对象数据保存到文件中

A_E*_*ric 3 java serialization class object

我已经看到了很多不同的帖子,关于你应该将一个对象序列化到一个文件的方式,所有这些都在性质上与如何做到以及最佳实践有什么冲突.所以这就是我想要保存的东西:

public class IHandler{
    public double currentLoad;
    public String currentPrice;
    public String configArgs[];
};
Run Code Online (Sandbox Code Playgroud)

我们可以假设configArgs的大小已知我需要创建一个文件,这是我到目前为止所拥有的.

public static void serializeDataOut(IHandler ISH)throws IOException{
    String fileName= "Test.txt";
    FileOutputStream fos = new FileOutputStream(fileName);
        //What do I do here?
    }

  public static IHandler serializeDataIn(){
      //What do I do here?
  }
Run Code Online (Sandbox Code Playgroud)

Nan*_*ale 7

我想,你想把对象直接写入文件

public static void serializeDataOut(IHandler ish)throws IOException{
    String fileName= "Test.txt";
    FileOutputStream fos = new FileOutputStream(fileName);
    ObjectOutputStream oos = new ObjectOutputStream(fos);
    oos.writeObject(ish);
    oos.close();
}

public static IHandler serializeDataIn(){
   String fileName= "Test.txt";
   FileInputStream fin = new FileInputStream(fileName);
   ObjectInputStream ois = new ObjectInputStream(fin);
   IHandler iHandler= (IHandler) ois.readObject();
   ois.close();
   return iHandler;
}
Run Code Online (Sandbox Code Playgroud)

我刚刚提供了重要的代码.通过异常处理实现此功能.

  • 但是,该类必须实现Serializable (2认同)