gpt4 book ai didi

JAVA读取XML,直接从element

转载 作者:行者123 更新时间:2023-12-02 02:44:13 26 4
gpt4 key购买 nike

我有读取 XML 文件的程序。最近我的供应商更改了源 XML 文件的某些部分,但我不知道如何读取更改的部分。

XML:

<Product>
<Weight>5,000</Weight>
<Color>blue</Color>
<Stock Warehouse_name="London" Availability="5,00"/>
<Stock Warehouse_name="Berlin" Availability="0,00"/>
<Stock Warehouse_name="Sydney" Availability="42,00"/>
</Product>

也许您已经看到我的问题了。重量和颜色都可以,但库存是我的问题。信息是直接在元素中提供的,而不是在元素之间提供信息。我正在使用标准方法来检索数据:

color = (eElement.getElementsByTagName("Color").item(0).getTextContent());

有什么建议吗?我对 Java 还很陌生,所以请尽可能简单地向我解释一下。

最佳答案

您需要获取Stock节点并转换为Element,然后才能获得您想要的属性。

final DocumentBuilder dBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
// textoXml contains your xml file
final Document doc = dBuilder.parse(new ByteArrayInputStream(textoXml.getBytes()));
// Here you gat the Stock node you want and cast to Element
final Element eStock = (Element) doc.getElementsByTagName("Stock").item(0);
final String warehouseName = eStock.getAttribute("Warehouse_name");

您可以在 https://www.mkyong.com/java/how-to-read-xml-file-in-java-dom-parser/ 中看到一些其他示例

关于JAVA读取XML,直接从element,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44913526/

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