- - PR -
xmlファイル読み込み時に
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2009-02-23 19:36
下記のようなxmlファイルをjavaで読み込もうとしており、
********************************************************** <hiduke date="2000/10/10"> <test> <a>1000</a> <b tyuki="true">2000</c> <c/> <testgokei total="true">3000</testgokei> </test> </hiduke> ********************************************************** 以下のようなプログラム(一部)を書いたのですが、 dateの「2000/10/10」と<a>の要素である「1000」の値はとる事ができたのですが、 <b>のtyukiと要素の値、<testgokei>のtotalと要素の値がとることが出来ません。 どこを編集すればよいのか、アドバイスいただけないでしょうか? ------------------------------------------------------------------------- try { DocumentBuilderFactory dbfactory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = dbfactory.newDocumentBuilder(); Document doc = builder.parse(new File("test.xml")); Element root = doc.getDocumentElement(); for(int j=0;j<4;j++){ NodeList list = root.getElementsByTagName(dataVO.dataname[j]); for (int i=0; i < list.getLength() ; i++) { Element element = (Element)list.item(i); String titlename = element.getTagName(); if(titlename.equals("hiduke")){ String date = element.getAttribute("date"); datelist.add(date); } String tyuki = element.getAttribute("tyuki"); String total = element.getAttribute("total"); System.out.println(tyuki); System.out.println(total); String data = element.getFirstChild().getNodeValue(); titlelist.add(titlename); datalist.add(data); } } } catch (Exception e) { e.printStackTrace(); } } | ||||
|
投稿日時: 2009-02-23 20:03
<b tyuki="true">2000</b> xmlとして間違えて居るのでは。 | ||||
|
投稿日時: 2009-02-23 20:38
失礼致しました。
<b tyuki="true">2000</b> です。また、質問した部分は自己解決しましたが、他の部分でエラーがでてしまいました。 <c/>を読み込んだ際に、要素がnullになるため、下記のように変更したのですが、 やはりjava.lang.NullPointerExceptionがでてしまいます。 どうすればよいでしょうか? if(element.getFirstChild().getNodeValue().equals(null)){ datalist.add("-"); } else{ String data = element.getFirstChild().getNodeValue(); titlelist.add(titlename); datalist.add(data); } | ||||
|
投稿日時: 2009-02-24 00:13
null 比較は == で。
| ||||
|
投稿日時: 2009-02-24 05:15
朝日奈 ありす様
返答ありがとうございます。 .equals(null)から==nullに変更しましたが、やはりjava.lang.NullPointerException が出てしまいます… | ||||
|
投稿日時: 2009-02-24 08:03
elementがnullじゃなくて?
行番号を見て、どこがnullになっているか1つずつデバッグしましょう。 | ||||
|
投稿日時: 2009-02-24 08:57
かつのり様
ご返答ありがとうございます。 elementはnullではありませんでしたが、 FirstChildがnullになっていたためでした。 NodeValueではなくFirstChildに比較箇所を変更したら無事解決しました。 返答いただいた方々ありがとうございました。 |
1