java - Java 中字符串的反序列化

标签 java string serialization deserialization

这是我在这里的第一篇文章,但我真的需要这方面的帮助,因为我才刚刚开始学习 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"]";
    }
}

也许我还没有完全理解反序列化的概念,但希望我能在这里得到一个输入,并找出我正在尝试做的事情是否行不通或没有意义。 提前致谢!

最佳答案

不清楚你在问什么。您所描述的构成解析一个字符串,而不是反序列化它,这是微不足道的。

第二个示例的问题似乎始于 toString() 方法。为什么要拥有它?只需序列化实际对象,而不是其toString() 方法的结果,然后直接反序列化。字符串根本不进入其中。

关于java - Java 中字符串的反序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33467764/

相关文章:

java - 如何删除字符串池中未引用的值?

java - 防病毒软件正在阻止我的 inno setup 编译的可执行 .exe 文件

Java - 提取特殊字符和单词之间的文本

php - 在 PHP5 中用多个/不同的值搜索和替换多个值?

java - 使用 java Runtime.exec 在 Windows 上执行 python 脚本

java - 如何在MainActivity之前启动java类

python - 在Python中计算数组幂集最快的方法是什么?

php - 将序列化数组作为字符串进行搜索是否安全? (MySql查询)

serialization - 获取架构反序列化错误 : Invalid default for field

Android - LinkedHashMap无法在Activity之间传递