gpt4 book ai didi

java - xstream 原始反序列化不起作用?

转载 作者:行者123 更新时间:2023-12-02 00:23:19 27 4
gpt4 key购买 nike

我正在使用 XStream 序列化程序来序列化原语,但在反序列化时遇到了问题。问题描述如下:

比如说,我有:

int i = 80;

我将其序列化如下:

serializer.toXML(i, new FileOutputStream("me.xml"));  

并获取此 xml:

<int>80</int>

但是当我试图解除现实时:

i = (int) serializer.fromXML("me.xml");

我得到这样的异常:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1
at com.thoughtworks.xstream.core.util.FastStack.pop(FastStack.java:42)
at com.thoughtworks.xstream.io.xml.AbstractPullReader.move(AbstractPullReader.java:125)
at com.thoughtworks.xstream.io.xml.AbstractPullReader.moveDown(AbstractPullReader.java:103)
at com.thoughtworks.xstream.io.xml.XppReader.<init>(XppReader.java:63)
at com.thoughtworks.xstream.io.xml.AbstractXppDriver.createReader(AbstractXppDriver.java:54)
at com.thoughtworks.xstream.XStream.fromXML(XStream.java:912)
at com.thoughtworks.xstream.XStream.fromXML(XStream.java:903)
at Utilities.Parser.serializeTimeIntervalDuration(Parser.java:371)
at Utilities.Parser.parseData(Parser.java:152)
at CoreLayer.Main.Main.main(Main.java:52)

有人可以指出我的错误吗?

提前致谢!

最佳答案

这是因为 fromXML() 需要的是 XML,而不是文件名。您应该在解析文件之前读取 XML。

请注意XStream fromXML() 有多种实现,因此您可以提供字符串、URL、读取器等。

目前,XStream 正在尝试理解字符串“me.xml”。

关于java - xstream 原始反序列化不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10518549/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com