FC2ブログ
一陣の神風が舞う
東北弁炸裂するショボプログラマの日々(´・ω・`)
10 | 2019/11 | 12
S M T W T F S
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

[Java] XPathでさっくりと値を取得してみた

XMLを読み込むとき、Node.getNodeType()とかでいちいちチェックするのは かなり面倒くさい。

なのでXPathってのを使ってみた。


読み込ませたXML

<?xml version="1.0" encoding="utf-8"?>
<Datas>
	<GameShop name="ゲームショップ神風">
		<Software title="カルネージハートポータブルEXA" price="5080"/>
		<Software title="戦場のヴァルキュリア3" price="4980"/>
	</GameShop>
</Datas>

で、こっちが読み込むためのソース。

public static void main(String[] args)
	throws ParserConfigurationException, FileNotFoundException,
	SAXException, IOException, XPathExpressionException
{
	InputStream stream = new FileInputStream("resource/test_data.xml");
	
	DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
	Document doc = builder.parse(stream);
	
	XPath xPath = XPathFactory.newInstance().newXPath();
	String location1 = "/Datas/GameShop/Software[@price<5000]/@title";
	String location2 = "/Datas/GameShop/Software[@price>5000]/@title";
	
	System.out.println("ソフト1 : " + xPath.evaluate(location1, doc, XPathConstants.STRING));
	System.out.println("ソフト2 : " + xPath.evaluate(location2, doc, XPathConstants.STRING));
}

出力結果

ソフト1 : 戦場のヴァルキュリア3
ソフト2 : カルネージハートポータブルEXA

|・x・)っ[成果物]

テーマ:プログラミング - ジャンル:コンピュータ

この記事に対するコメント

この記事に対するコメントの投稿














管理者にだけ表示を許可する


この記事に対するトラックバック
トラックバックURL
→http://ciablo.blog70.fc2.com/tb.php/135-cf3d4898
この記事にトラックバックする(FC2ブログユーザー)

プロフィール

Mahny

Author:Mahny
趣味PG派生の職業PG(+SE?)。頭のデキはきっと残念ω

最近の記事

最近のコメント

最近のトラックバック

月別アーカイブ

カテゴリー

ブロとも申請フォーム

この人とブロともになる

ブログ内検索

RSSフィード

リンク

このブログをリンクに追加する

ペット