锘??xml version="1.0" encoding="utf-8" standalone="yes"?>9999精品视频,久久99影院,久久精品avhttp://www.aygfsteel.com/xyy198203/category/20721.htmlDAY DAY UP , STUDY HARDzh-cnSun, 18 Mar 2007 02:31:33 GMTSun, 18 Mar 2007 02:31:33 GMT60JDOM澶勭悊XML蹇熶笂鎵?-緇撳悎XPATHhttp://www.aygfsteel.com/xyy198203/articles/104403.html娌℃湁楸肩殑姘?/dc:creator>娌℃湁楸肩殑姘?/author>Sat, 17 Mar 2007 02:46:00 GMThttp://www.aygfsteel.com/xyy198203/articles/104403.htmlhttp://www.aygfsteel.com/xyy198203/comments/104403.htmlhttp://www.aygfsteel.com/xyy198203/articles/104403.html#Feedback0http://www.aygfsteel.com/xyy198203/comments/commentRss/104403.htmlhttp://www.aygfsteel.com/xyy198203/services/trackbacks/104403.html XPATH鍩虹
聽聽聽聽聽聽 XPATH閬靛驚鏂囨。瀵硅薄妯″瀷(DOM)鐨勮礬寰勬牸寮忥紝鍩烘湰璇硶鐢辮〃杈懼紡鏋勬垚銆傚湪璁$畻琛ㄨ揪寮忕殑鍊間箣鍚庝駭鐢熶竴涓璞★紝榪欑瀵硅薄鏈変互涓嬪洓縐嶅熀鏈被鍨嬶細鑺傜偣闆嗗悎銆佸竷?yōu)當鍨嬨佹暟瀛楀瀷鍜屽瓧絎?/font>
涓插瀷銆俋PATH鍩烘湰涓婂拰鍦ㄦ枃浠剁郴緇熶腑瀵繪壘鏂囦歡綾諱技錛屽鏋滆礬寰勬槸浠?/"寮澶寸殑錛屽氨琛ㄦ槑璇ヨ礬寰勮〃紺虹殑鏄竴涓粷瀵硅礬寰勶紝榪欏拰鍦║NIX緋葷粺涓叧浜庢枃浠惰礬寰勭殑瀹氫箟鏄竴鑷寸殑銆備互"http://"寮澶?/font>
鍒欒〃紺哄湪鏂囨。涓殑浠繪剰浣嶇疆鏌ユ壘銆?br />聽聽聽聽聽聽 浠ユ牱渚媂ML鏂囨。錛坒riends.xml錛変負渚嬫潵浜嗚ВXPATH錛?
xml鏂囦歡
聽聽聽聽聽 鍦╔ML鏂囨。涓嬌鐢ㄤ綅緗礬寰勮〃杈懼紡鏉ユ煡鎵句俊鎭紝榪欎簺琛ㄨ揪寮忔湁寰堝縐嶇粍鎴愭柟寮忋備竴鑸垜浠敤寰楁渶澶氱殑鎭愭曟槸 鑺傜偣鍏冪礌 鏌ユ壘銆俋PATH涓敤姝f枩鏉狅紙/錛夋潵鍒嗛殧瀛愮粨鐐癸紝榪斿洖鎵鏈変笌
妯″紡鐩稿尮閰嶇殑鍏冪礌銆備笅闈互鍑犱釜 琛ㄨ揪寮?鐨勪緥瀛愭潵璇存槑涓涓嬭繑鍥炵粨鏋滐細
聽聽聽聽聽 琛ㄨ揪寮忥細/friends/friend
聽聽聽聽聽 榪斿洖錛氭牴鍏冪礌friends涓嬫墍鏈夌殑 friend 鍏冪礌錛堟垨鑺傜偣錛夈傦紙褰撶劧鏈緥鍙湁涓涓暒錛侊級
聽聽聽聽聽 琛ㄨ揪寮忥細/friends/*
聽聽聽聽聽 榪斿洖錛氭牴鍏冪礌friends涓嬫墍鏈夌殑鍏冪礌錛堟垨鑺傜偣錛夈傦紙鈥?鈥濈浉褰撲簬閫氶厤絎︼紝琛ㄧず鈥滄墍鏈夆濈殑錛?/font>
聽聽聽聽聽 琛ㄨ揪寮忥細//friend
聽聽聽聽 聽榪斿洖錛氫換鎰忓厓绱狅紙鎴栬妭鐐癸級涓嬬殑鎵鏈?friend 鍏冪礌錛堟垨鑺傜偣錛夈傦紙娉ㄦ剰錛氫笉浠呬粎鏄?涓?鏍瑰厓绱爁riends涓嬮潰鐨刦riend鍏冪礌,濡傛灉瀛樺湪鐨勮瘽錛?/font>
聽聽聽聽聽 琛ㄨ揪寮忥細/friends/friend[@number='1']
聽聽聽聽 聽榪斿洖錛氭牴鍏冪礌涓嬪厓绱犲悕縐頒負 friend錛宯umber灞炴т負'1'鐨勫叏閮ㄥ厓绱狅紙鎴栬妭鐐癸級銆傦紙瀵逛簬鍏冪礌鎴栬妭鐐圭殑闄勫姞鍏冪礌錛屾瘮濡傚睘鎬э紝鍑芥暟絳夐兘瑕佺敤鏂規(guī)嫭鍙?[]"鎵╄搗鏉ワ紝灞炴у墠闈㈣鍔?/font>
涓?@"鍙鳳級
聽聽聽聽聽 琛ㄨ揪寮忥細/friends/friend/phone[text()='87654321']
聽聽聽聽聽 榪斿洖錛氬厓绱爁riends/friend涓嬬數(shù)璇濆彿鐮佷負 87654321 鐨勫叏閮ㄥ厓绱犮傦紙text()鏄疿PATH鐨勫嚱鏁幫紝鍔熻兘鏄彇鍑哄綋鍓嶈妭鐐圭殑鏂囨湰鍐呭錛屽嵆content銆傦級
聽聽聽聽聽 琛ㄨ揪寮忥細//name/parent::*
聽聽聽聽聽 榪斿洖錛歯ame鍏冪礌鐨勬墍鏈夌埗鍏冪礌錛堟垨鑺傜偣錛夈?parent::* 琛ㄧず榪欎釜鍏冪礌鐨勬墍鏈夌殑鐖惰妭鐐圭殑闆嗗悎)
聽聽聽聽聽 涓婇潰鐨勪粙緇嶅浜庢垜浠竴鑸殑搴旂敤鍩烘湰涓婂鐢ㄤ簡錛屽鏋滀綘闇瑕佽繘涓姝ョ殑娣卞叆錛岃鏌ョ湅W3C鍙戝竷鐨勫叧浜嶺APH鐨勫畼鏂硅祫鏂欍?/font>
JDOM+XPATH搴旂敤
聽聽聽聽 聽鐜板湪鎴戜滑寮濮嬩嬌鐢╔PATH緇撳悎JDOM鏉ユ搷浣淴ML鏂囦歡浜嗐侸DOM鐨勫叧浜嶺PATH鐨刟pi鍙湁涓涓被錛歑path.java錛屽湪org.jdom.xpath榪欎釜鍖呬腑銆傝繖涓被涓殑鏍稿績鏂規(guī)硶涓昏鏄袱涓潤鎬佹柟娉?
selectNodes()鍜宻electSingleNode()銆傚墠鑰呮牴鎹竴涓獂path璇彞榪斿洖涓緇勮妭鐐?List錛涘悗鑰呮牴鎹竴涓獂path璇彞榪斿洖絎﹀悎鏉′歡鐨勭涓涓妭鐐?Object銆?br />聽聽聽聽聽聽聽聽 public static List selectNodes(Object arg1,String arg2) throws org.jdom.JDOMException;
聽聽聽聽聽聽聽聽 public static Object selectSingleNode(Object arg1,String arg2) throws org.jdom.JDOMException;
聽聽聽聽聽
聽聽聽聽聽 鍦ㄤ嬌鐢╔PATH涔嬪墠錛岃鍏堢‘瀹氫綘鐨刢lasspath璺緞閲岄潰鏈夊涓嬪嚑涓狫AR鍖咃紝濡傛灉娌℃湁錛岃浠嶫DOM鐨勫彂琛屽寘涓璴ib鐩綍涓媍opy:
聽聽聽聽聽聽聽聽 saxpaht.jar
聽聽聽聽聽聽聽聽 jaxen-core.jar
聽聽聽聽聽聽聽聽 jaxen-jdom.jar

鏍峰垪JAVA浠g爜錛?/font>

package 聽聽cyberobject.com.xpath;聽

聽聽聽聽聽
import 聽聽java.io.IOException;
聽聽聽聽聽
import 聽聽java.util.List;聽
聽聽聽聽聽
import 聽聽org.jdom.Document;
聽聽聽聽聽
import 聽聽org.jdom.Element;
聽聽聽聽聽
import 聽聽org.jdom.Text;
聽聽聽聽聽
import 聽聽org.jdom.JDOMException;
聽聽聽聽聽
import 聽聽org.jdom.input.SAXBuilder;
聽聽聽聽聽
import 聽聽org.jdom.xpath.XPath;聽
聽聽聽聽聽
/** */ /**
聽聽聽聽聽*聽聽
@author 聽聽wanghua
聽聽聽聽聽*
聽聽聽聽聽*聽TODO聽To聽change聽the聽template聽for聽this聽generated聽type聽comment聽go聽to
聽聽聽聽聽*聽Window聽-聽Preferences聽-聽Java聽-聽Code聽Style聽-聽Code聽Templates
聽聽聽聽聽聽
*/

聽聽聽聽聽聽
public class 聽XpathSample聽聽聽 {
聽聽聽聽聽聽聽聽聽聽
public static void 聽main(String[]聽args)聽 throws 聽JDOMException,聽IOException聽聽 {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽SAXBuilder聽sb聽
= new 聽聽SAXBuilder();
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽Document聽doc聽聽
= 聽sb.build(聽 " 聽friends.xml聽 " 聽);
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽Element聽root聽聽
= 聽doc.getRootElement();
聽聽聽聽聽聽
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽List聽list聽
= 聽XPath.selectNodes(root,聽 " 聽/friends/friend聽 " 聽);
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽System.out.println(聽
" 聽[info]聽Friends聽List:聽 " 聽);
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
for 聽(聽 int 聽聽ii聽聽 = 聽聽聽 0 聽;聽ii聽聽 < 聽聽list.size();聽ii聽 ++ 聽)聽聽 {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽Element聽element聽聽
= 聽聽(Element)list.get(ii);
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽String聽number聽聽
= 聽聽element.getAttributeValue(聽 " 聽number聽 " 聽);
聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
// 聽String聽name聽=聽element.getChildText("name");聽
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽String聽name聽聽 = 聽聽(聽(Text)聽XPath.selectSingleNode(element,聽 " 聽//friend[@number='聽 " 聽聽聽 + 聽聽number聽聽 + 聽聽聽 " 聽']/name/text()聽 " 聽)).getTextNormalize();聽
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
// 聽String聽sex聽=聽element.getChild("sex").getAttributeValue("value");聽
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽String聽sex聽聽 = 聽聽((Element)XPath.selectSingleNode(element,聽 " 聽//friend[@number='聽 " 聽聽聽 + 聽聽number聽聽 + 聽聽聽 " 聽']/sex聽 " 聽)).getAttributeValue(聽 " 聽value聽 " 聽);
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
// 聽String聽phone聽=聽element.getChildText("phone");聽
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽String聽phone聽聽 = 聽聽(聽(Text)聽XPath.selectSingleNode(element,聽 " 聽//friend[@number='聽 " 聽聽聽 + 聽聽number聽聽 + 聽聽聽 " 聽']/phone/text()聽 " 聽)).getText();
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽System.out.println(聽
" 聽No.聽 " + 聽number);
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽System.out.println(聽
" 聽聽Name:[聽 " 聽聽聽 + 聽聽name聽聽 + 聽聽聽 " 聽]聽 " 聽);
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽System.out.println(聽
" 聽聽Sex:[聽 " 聽聽聽 + 聽聽sex聽聽 + 聽聽聽 " 聽]聽 " 聽);
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽System.out.println(聽
" 聽聽Phone:[聽 " 聽聽聽 + 聽聽phone聽聽 + 聽聽聽 " 聽]聽 " 聽);
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽System.out.println();
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽}
聽聽聽
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽System.out.println(聽
" 聽[info]聽End聽of聽Friends聽List.聽 " 聽);
聽聽聽聽聽聽聽聽聽}

聽聽聽聽}
聽聽

杈撳嚭緇撴灉錛?/font>
[info] Friends List:
No.1
聽Name:[zoof]
聽Sex:[male]
聽Phone:[87654321]
No.2
聽Name:[joe]
聽Sex:[male]
聽Phone:[87654322]
No.3
聽Name:[joe]
聽Sex:[female]
聽Phone:[87654323]
[info] End of Friends List.


]]>
主站蜘蛛池模板: 弋阳县| 佛坪县| 涞源县| 丹江口市| 鄢陵县| 洞头县| 尼玛县| 平安县| 行唐县| 新乡县| 宁阳县| 新泰市| 青冈县| 彩票| 盐源县| 丹江口市| 武陟县| 峡江县| 临安市| 奎屯市| 习水县| 武隆县| 兴隆县| 沅江市| 太仆寺旗| 赞皇县| 仙居县| 中方县| 博乐市| 宁城县| 三门峡市| 固安县| 佳木斯市| 德阳市| 云龙县| 屏东县| 邯郸市| 育儿| 酉阳| 喀什市| 乌鲁木齐县|