将xml字符串反序列化为对象时,java中的流标头无效

时间:2016-02-25 08:24:10

标签: java xml deserialization

我有一个小项目。我想将xml字符串反序列化为对象,但在创建ObjectInputStream时出现错误“无效的流标题3C3F786D”。

代码:

   String value=" <?xml version="1.0" encoding="utf-8"?>
    <metaData xmlns="....">
      <data key="aa">fdfdfd</data>
      <data key="bb">5.2.0.15947</data>
      <data key="tt">
        <ee SI="SIDocument">
        </ee>
      </data>
    </metaData>";



  ByteArrayInputStream bi = new ByteArrayInputStream(value.getBytes());
                    if(bi!=null)
                    {
                     ObjectInputStream in = new ObjectInputStream(bi);// error here
                     MetaData metaData= (MetaData) in.readObject();
                    }

我谷歌,我知道,String.getBytes不能用于ObjectInputStream。 那么,我该怎么做呢?

解决

我已经使用JAXB来序列化。看到 JAXB tutorial

0 个答案:

没有答案