我试图通过将所有<Type>
参数元素为type_id =“ 4218”的所有“ ”元素从URL解析XML文件?
XML文件:
<BSQCUBS Version="0.04" Date="Fri Dec 9 11:43:29 GMT 2011" MachineDate="Fri, 09 Dec 2011 11:43:29 +0000">
<Class class_id="385">
<Title>Football Matches</Title>
<Type type_id="4264" type_minbet="0.1" type_maxbet="2000.0">
...
</Type>
<Type type_id="5873" type_minbet="0" type_maxbet="0">
...
</Type>
<Type type_id="4725" type_minbet="0.1" type_maxbet="2000.0">
...
</Type>
<Type type_id="4218" type_minbet="0.1" type_maxbet="2000.0">
...
</Type>
<Type type_id="4221" type_minbet="0.1" type_maxbet="2000.0">
...
</Type>
<Type type_id="4218" type_minbet="0.1" type_maxbet="2000.0">
...
</Type>
<Type type_id="4299" type_minbet="0.1" type_maxbet="2000.0">
...
</Type>
</Class>
</BSQCUBS>
这是我的Java代码:
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(new URL("http://cubs.bluesq.com/cubs/cubs.php?action=getpage&thepage=385.xml").openStream());
doc.getDocumentElement().normalize();
NodeList nodeList = doc.getElementsByTagName("Type");
System.out.println("ukupno:"+nodeList.getLength());
if (nodeList != null && nodeList.getLength() > 0) {
for (int j = 0; j < nodeList.getLength(); j++) {
Element el = (org.w3c.dom.Element) nodeList.item(j);
type_id = Integer.parseInt(el.getAttribute("type_id"));
System.out.println("type id:"+type_id);
}
}
这段代码给了我所有元素,我不想要,我想要属性type_id =“ 4218”的所有元素!
XPath是您的正确选择:
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse("<Your xml doc uri>");
XPathFactory xPathfactory = XPathFactory.newInstance();
XPath xpath = xPathfactory.newXPath();
XPathExpression expr = xpath.compile("//Type[@type_id=\"4218\"]");
NodeList nl = (NodeList) expr.evaluate(doc, XPathConstants.NODESET);
并遍历 nl
问题内容: 在XML文档中,我具有共享相同名称的元素,但是属性的值定义了它是什么类型的数据,并且我想从文档中选择所有具有特定值的元素。我是否需要使用XPath(如果可以,您是否可以建议正确的语法)还是有更优雅的解决方案? 这是一些示例XML: 我想选择类型为的所有子代标签的内容。 PS-我正在尝试使用PHP与Netflix API进行接口-这对我的问题无关紧要,但是如果您想提出一种更好的方法,我非
嗨,我有以下XML 标准是只复制“item-name”属性值为TShert、Ball或Bat的位置。所以生成的XML应该看起来像 我正在使用以下XSLT 但这不起作用。你能帮忙吗? 谢谢Nathan
假设我想用这个签名对一个方法进行单元测试: 假设是一个具有许多属性的Pojo,其中一个属性是,通过访问。 我所关心的只是验证
我正在用Python制作一个基于文本的RPG,并尝试设置地图和玩家移动。然而,我还没有弄清楚如何“链接”房间,以便玩家可以使用诸如北、南等命令从一个房间无缝移动到另一个房间。 我正在使用一个名为“Room”的类,它具有x坐标和y坐标属性。我已经制作了地图中每个“瓷砖”的实例,具有特定的x-pos和y-pos值。我要做的是根据当前的x-pos或y-pos是什么,转到“Room”类的当前实例。但是,我
如果集合包含具有特定属性值的元素,我想断言(使用JUnit,而不是任何其他依赖项,如hamcrest)。 我发现这个问题如何断言迭代包含具有特定属性的元素?使用危害冠。 一种选择是重写< code>equals方法,只检查我想要比较的属性,但这不是一个好的解决方案。 有没有一种优雅的方法可以使用JUnit 4来实现这一点,或者我应该对其进行编码并循环访问集合以检查值?
问题内容: 在我的阻止代码中,我试图以编程方式检索具有特定值属性的产品列表。 或者,如果不可能的话,将如何检索所有产品然后过滤它们以仅列出具有特定属性的产品? 如何使用标准布尔过滤器执行搜索或匹配产品的子集? 问题答案: 几乎所有的Magento模型都有一个对应的Collection对象,该对象可用于获取模型的多个实例。 要实例化产品集合,请执行以下操作 产品是Magento EAV样式的模型,因