小编use*_*170的帖子

如何使用JAVA DOM从嵌套XML中提取数据?

我有一个有多个的xml文档.我能够获得和帐户的详细信息(等等.我很难得到像card_type,年,月,first_six等的东西.

该文档中有200个事务,因此循环.

  <transaction href="https://test.com" type="cc">
    <source>subscription</source>
    <created_at type="datetime">2014-03-06T20:59:03Z</created_at>
    <details>
      <account>
        <account_code>234234234</account_code>
        <first_name>asdadad</first_name>
        <last_name>asdadasd3433</last_name>
        <company nil="nil"></company>
        <email>test@gmail.com</email>
        <billing_info type="credit_card">
          <first_name>asdasdasd</first_name>
          <last_name>asdasdasd23434</last_name>
          <address1 nil="nil"></address1>
          <address2 nil="nil"></address2>
          <city nil="nil"></city>
          <state nil="nil"></state>
          <zip nil="nil"></zip>
          <country nil="nil"></country>
          <phone nil="nil"></phone>
          <vat_number nil="nil"></vat_number>
          <card_type>Visa</card_type>
          <year type="integer">2039</year>
          <month type="integer">6</month>
          <first_six>111111</first_six>
          <last_four>9999</last_four>
        </billing_info>
      </account>
    </details>
    <a name="refund" href="https://test.com/refund" method="delete"/>
  </transaction>
Run Code Online (Sandbox Code Playgroud)

我在尝试代码时遇到此错误:

java.lang.NullPointerException
        at test.test.getTransactions(test.java:288)
        at test.test.main(test.java:53)
Run Code Online (Sandbox Code Playgroud)

这是我正在尝试的:

try {
  NodeList nList2 = eElement.getElementsByTagName("details");
  Node nNode2 = nList2.item(0);
  Element eElement2 = (Element) nNode2;

  //get some other info in try catch …
Run Code Online (Sandbox Code Playgroud)

java xml dom

1
推荐指数
1
解决办法
5177
查看次数

标签 统计

dom ×1

java ×1

xml ×1