我正在使用 xstream 来解析 XML,一切顺利,而.... 有一种情况 xstream 似乎无法处理。
有一个名为“”的标签,但在不同的xml文件中,它可以包含文本节点或其他XML标签。
它可以是这样的:
XML File 1:
<Spec> text Node Here </Spec>
XML File 2:
<Spec Id="1">
<Tag1>value</Tag1>
<Tag2>value</Tag2>
</Spec>
在 Spec 类中,我有这个代码......
@XStreamAlias("Spec")
@XStreamConverter(value = ToAttributedValueConverter.class, strings = { "spec" }) //when Text Node
public class Spec
{
String spec; // text Node
@XStreamAlias("Id")
@XStreamAsAttribute
String id;
@XStreamAlias("Tag1")
String tag1;
@XStreamAlias("Tag2")
String tag2;
// getter and setter...
}
在 XML 文件 1 的情况下,它工作正常,但在 XML 文件 2 的情况下,字段“tag1”和“tag2”的值为空,字段“spec”的值类似于:“\n\t\t”
我能做些什么来处理这两个文件?提前致谢!