我想用Java解析XML。 的XML看起来像:解析特定的XML
<Attributes><ProductAttribute ID="359"><ProductAttributeValue><Value>1150</Value></ProductAttributeValue></ProductAttribute><ProductAttribute ID="361"><ProductAttributeValue><Value>1155</Value></ProductAttributeValue></ProductAttribute></Attributes>
我的尝试是:
public static void parseXml(String sb) throws Exception{
sb = "<Attributes><ProductAttribute ID="359"><ProductAttributeValue><Value>1150</Value></ProductAttributeValue></ProductAttribute><ProductAttribute ID="361"><ProductAttributeValue><Value>1155</Value></ProductAttributeValue></ProductAttribute></Attributes>";
Document dom;
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
dom = db.parse(new InputSource(new ByteArrayInputStream(sb.getBytes("utf-8"))));
dom.toString();
}
我想先看看,如果解析是怎么回事。但事实并非如此。
我得到的错误:
Premature end of file
任何人有一个想法,我怎么能解析这些?
问题不重复。我已经阅读了另一个问题的答案,如我的问题,但区别在于XML。
谢谢
那么你试图解析一个不是XML的字符串。您需要从JSON中获取AttributesXml属性的*值*,然后解析*。目前尚不清楚所有这些来自哪里,或者其他代码是什么样的,但您应该首先理解的是获取有效的XML。 –
首先,获取正确的XML,然后对其进行规范化,然后使用getElementsByTagName方法获取值。 – srp321
感谢您的意见。我已经改变它并获得AttributesXml的值,但现在我得到一个错误。我已更新我的问题 –