【问题标题】:Java Dom or SAX XML ParserJava Dom 或 SAX XML 解析器
【发布时间】:2014-02-22 12:01:38
【问题描述】:

示例 XML:

<Books>
<Book id="1" Name="C#">
<URL>http://localhost/download/M1.xml</URL>
</Book>

<Book id="2" Name="Oracle">
<URL>http://localhost/download/M2.xml</URL>
</Book>

<Book id="3" Name="Archius">
<URL>http://localhost/download/M3.xml</URL>
<URL>http://localhost/download/M4.xml</URL>
</Book>
</Books>

我只需要获取书名属性并将其用于显示。但是,例如,我有书籍列表,即(C#,Oracle,Archius),将这个值传递给一个方法应该返回一个数组其中的 URL 节点值。

想法是在列表中显示书名,然后在用户选择时,需要获取相应的 URL。

能够获得遍历节点的循环

 NodeList nodeList = document.getDocumentElement().getElementsByTagName ("Book");
 for (int i = 0; i < nodeList.getLength(); i++) {...

所以, a) 显示书名 b) 如果我传递了书名,则获取特定书的相应 URL

【问题讨论】:

标签: java xml dom saxparser


【解决方案1】:

这不会像你期望的那样工作。您说“如果我传递书名,则获取特定书的相应 URL”,但可能存在相同的书名。 所以你肯定需要额外的项目,无论是 ISBN 还是 SKU 或者任何你可以用它作为主键的东西。

如果您想在鼠标悬停或其他东西时支持预览书籍图像,您可能需要解析更多内容......但无论如何,如果您只想使用整个 XML 的几个项目......那么它应该是SAX 解析器 IMO。

【讨论】:

  • 我可能可以隐藏与图书列表对应的 ID,然后在发出请求时使用该 ID。请需要一个工作示例
  • @Alfaromeo 举个例子?你没有问任何问题?
  • a) 显示书名 b) 如果我传递书名,则获取特定书的相应 URL
猜你喜欢
  • 2015-10-08
  • 2017-08-19
  • 2020-01-17
  • 1970-01-01
  • 2010-09-16
  • 2011-11-01
  • 2012-07-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多