这是我在这里的第一篇帖子,但我真的需要关于Java中序列化/反序列化的帮助,因为我刚开始学习:
也许我还没有完全理解反序列化的概念,但希望能在这里得到一些指导,并找出我尝试做的事情是否行得通或者是否没有意义。谢谢!
我有一个类似于以下内容的字符串:
String str = "ExampleClass[id=123,date=2009-07-12,state=OPEN]";
我的问题是:我能反序列化这个字符串并访问其中的信息吗?我只看到过使用 ObjectOutputStream
和方法 .writeObject()
创建文件,然后从中读取的示例。
我还有一个类,看起来像这样:
public class ExampleClass implements Serializable {
protected String id;
protected Date startDate;
protected String state;
//other code...
public String toString(){
return "ExampleClass[id="+id+",date="+startDate+",status="state"]";
}
}
也许我还没有完全理解反序列化的概念,但希望能在这里得到一些指导,并找出我尝试做的事情是否行得通或者是否没有意义。谢谢!
String
值解析回一个Object
表示,这并不是序列化所做的事情,它接受一个对象并生成一个二进制表示,可以存储到文件或传输到另一台计算机。对于你的问题,你需要编写一些代码来提取你需要的String
值,然后生成该类的新实例。 - MadProgrammer