锘??xml version="1.0" encoding="utf-8" standalone="yes"?>国产中文在线,亚洲第一影院,日韩精选在线http://www.aygfsteel.com/vista/category/15810.html<font style="font-size:18px;">鍥為【鈥誨睍鏈?lt;font> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;娼滃績鎶鏈?amp;&涓嶅啀鎼佹祬 <a onClick="璋㈣阿鐐瑰嚮" target="_blank"><img src="http://blog.csdn.net/images/blog_csdn_net/Diego1983/hehe.jpg" height="40" border="0" /></a>zh-cnFri, 02 Mar 2007 03:11:33 GMTFri, 02 Mar 2007 03:11:33 GMT60vista綺劇涔?--dom4j鍏ラ棬(杞創)http://www.aygfsteel.com/vista/archive/2006/12/09/86602.htmlVistaVistaSat, 09 Dec 2006 14:41:00 GMThttp://www.aygfsteel.com/vista/archive/2006/12/09/86602.htmlhttp://www.aygfsteel.com/vista/comments/86602.htmlhttp://www.aygfsteel.com/vista/archive/2006/12/09/86602.html#Feedback0http://www.aygfsteel.com/vista/comments/commentRss/86602.htmlhttp://www.aygfsteel.com/vista/services/trackbacks/86602.htmldom4j錛圴ersion 1.6.1錛夊揩閫熷叆闂?/h3>

Parsing XML

鎴栬浣犳兂瑕佸仛鐨勭涓浠朵簨鎯呭氨鏄В鏋愪竴涓煇縐嶇被鍨嬬殑XML鏂囨。錛岀敤dom4j寰堝鏄撳仛鍒般傝鐪嬩笅闈㈢殑紺鴻寖浠g爜錛?/p>

import java.net.URL;

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.io.SAXReader;

public class Foo {

public Document parse(URL url) throws DocumentException {
SAXReader reader = new SAXReader();
Document document = reader.read(url);
return document;
}
}

浣跨敤榪唬鍣紙Iterators錛?/p>

鎴戜滑鍙互閫氳繃澶氱鏂規硶鏉ユ搷浣淴ML鏂囨。錛岃繖浜涙柟娉曡繑鍥瀓ava閲屾爣鍑嗙殑榪唬鍣紙Iterators錛夈備緥濡傦細

public void bar(Document document) throws DocumentException {
Element root = document.getRootElement();
//榪唬鏍瑰厓绱犱笅闈㈢殑鎵鏈夊瓙鍏冪礌
for ( Iterator i = root.elementIterator(); i.hasNext(); ) {
Element element = (Element) i.next();
//澶勭悊浠g爜
}

//榪唬鏍瑰厓绱犱笅闈㈠悕縐頒負"foo"鐨勫瓙鍏冪礌
for ( Iterator i = root.elementIterator( "foo" ); i.hasNext(); ) {
Element foo = (Element) i.next();
//澶勭悊浠g爜
}

// 榪唬鏍瑰厓绱犵殑灞炴ttributes錛夊厓绱?br />for ( Iterator i = root.attributeIterator(); i.hasNext(); ) {
Attribute attribute = (Attribute) i.next();
// do something
}
}

寮哄ぇ鐨刋Path瀵艱埅

鍦╠om4j涓璛Path鍙互琛ㄧず鍑哄湪XML鏍戠姸緇撴瀯涓殑Document鎴栬呬換鎰忕殑鑺傜偣錛圢ode錛夛紙渚嬪錛欰ttribute錛孍lement 鎴栬?ProcessingInstruction絳夛級銆傚畠鍙互浣垮湪鏂囨。涓鏉傜殑鎿嶄綔浠呴氳繃涓琛屼唬鐮佸氨鍙互瀹屾垚銆備緥濡傦細

public void bar(Document document) {
List list = document.selectNodes( "http://foo/bar" );

Node node = document.selectSingleNode( "http://foo/bar/author" );

String name = node.valueOf( "@name" );
}

濡傛灉浣犳兂寰楀埌涓涓猉HTML鏂囨。涓殑鎵鏈夎秴鏂囨湰閾炬帴錛坔ypertext links錛変綘鍙互浣跨敤涓嬮潰鐨勪唬鐮侊細

public void findLinks(Document document) throws DocumentException {

List list = document.selectNodes( "http://a/@href" );

for (Iterator iter = list.iterator(); iter.hasNext(); ) {
Attribute attribute = (Attribute) iter.next();
String url = attribute.getValue();
}
}

濡傛灉浣犻渶瑕佸叧浜嶺Path璇█鐨勪換浣曞府鍔╋紝鎴戜滑寮虹儓鎺ㄨ崘榪欎釜绔欑偣Zvon tutorial浠栦細閫氳繃涓涓竴涓殑渚嬪瓙寮曞浣犲涔犮?/p>

蹇熼亶鍘嗭紙Fast Looping錛?/p>


濡傛灉浣犱笉寰椾笉閬嶅巻涓涓潪甯稿ぇ鐨刋ML鏂囨。錛岀劧鍚庢墠鍘繪墽琛岋紝鎴戜滑寤鴻浣犱嬌鐢ㄥ揩閫熼亶鍘嗘柟娉曪紙fast looping method錛夛紝瀹冨彲浠ラ伩鍏嶄負姣忎竴涓驚鐜殑鑺傜偣鍒涘緩涓涓凱浠e櫒瀵硅薄,濡備笅鎵紺猴細

public void treeWalk(Document document) {
treeWalk( document.getRootElement() );
}

public void treeWalk(Element element) {
for ( int i = 0, size = element.nodeCount(); i < size; i++ ) {
Node node = element.node(i);
if ( node instanceof Element ) {
treeWalk( (Element) node );
}
else {
// do something....
}
}
}

鐢熸垚涓涓柊鐨刋ML鏂囨。瀵硅薄

鍦╠om4j涓綘鍙兘甯稿父甯屾湜鐢ㄧ▼搴忕敓鎴愪竴涓猉ML鏂囨。瀵硅薄錛屼笅闈㈢殑紼嬪簭涓轟綘榪涜浜嗙ず鑼冿細

import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;

public class Foo {

public Document createDocument() {
Document document = DocumentHelper.createDocument();
Element root = document.addElement( "root" );

Element author1 = root.addElement( "author" )
.addAttribute( "name", "James" )
.addAttribute( "location", "UK" )
.addText( "James Strachan" );

Element author2 = root.addElement( "author" )
.addAttribute( "name", "Bob" )
.addAttribute( "location", "US" )
.addText( "Bob McWhirter" );

return document;
}
}

灝嗕竴涓枃妗e璞″啓鍏ユ枃浠朵腑

灝嗕竴涓枃妗e璞″啓鍏riter瀵硅薄鐨勪竴涓畝鍗曞揩閫熺殑閫斿緞鏄氳繃write()鏂規硶銆?/p>

FileWriter out = new FileWriter( "foo.xml" );
document.write( out );

濡傛灉浣犳兂鏀瑰彉杈撳嚭鏂囦歡鐨勬帓鐗堟牸寮忥紝姣斿浣犳兂瑕佷竴涓紓浜殑鏍煎紡鎴栬呮槸涓涓揣鍑戠殑鏍煎紡錛屾垨鑰呬綘鎯崇敤Writer 瀵硅薄鎴栬匫utputStream 瀵硅薄鏉ユ搷浣滐紝閭d箞浣犲彲浠ヤ嬌鐢╔MLWriter 綾匯?/p>

import org.dom4j.Document;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;

public class Foo {

public void write(Document document) throws IOException {

// 鍐欏叆鏂囦歡
XMLWriter writer = new XMLWriter(
new FileWriter( "output.xml" )
);
writer.write( document );
writer.close();


// 浠ヤ竴縐嶄紭闆呯殑鏍煎紡鍐欏叆System.out瀵硅薄
OutputFormat format = OutputFormat.createPrettyPrint();
writer = new XMLWriter( System.out, format );
writer.write( document );

// 浠ヤ竴縐嶇揣鍑戠殑鏍煎紡鍐欏叆System.out瀵硅薄
format = OutputFormat.createCompactFormat();
writer = new XMLWriter( System.out, format );
writer.write( document );
}
}

杞寲涓哄瓧絎︿覆錛屾垨鑰呬粠瀛楃涓茶漿鍖?/p>

濡傛灉浣犳湁涓涓枃妗o紙Document錛夊璞℃垨鑰呬換浣曚竴涓妭鐐癸紙Node錛夊璞$殑寮曠敤錛坮eference錛夛紝璞″睘鎬э紙Attribute錛夋垨鑰呭厓绱狅紙Element錛夛紝浣犲彲浠ラ氳繃asXML()鏂規硶鎶婂畠杞寲涓轟竴涓粯璁ょ殑XML瀛楃涓詫細

Document document = ...;
String text = document.asXML();

濡傛灉浣犳湁涓浜沊ML鍐呭鐨勫瓧絎︿覆琛ㄧず錛屼綘鍙互閫氳繃DocumentHelper.parseText()鏂規硶灝嗗畠閲嶆柊杞寲涓烘枃妗o紙Document錛夊璞★細

String text = "James";
Document document = DocumentHelper.parseText(text);

閫氳繃XSLT鏍峰紡鍖栨枃妗o紙Document錛?/p>


浣跨敤Sun鍏徃鎻愪緵鐨凧AXP API灝哫SLT 搴旂敤鍒版枃妗o紙Document錛変笂鏄緢綆鍗曠殑銆傚畠鍏佽浣犱嬌鐢ㄤ換浣曠殑XSLT寮曟搸錛堜緥濡傦細Xalan鎴朣AXON絳夛級鏉ュ紑鍙戙備笅闈㈡槸涓涓嬌鐢↗AXP鍒涘緩涓涓漿鍖栧櫒錛坱ransformer錛夛紝鐒跺悗灝嗗畠搴旂敤鍒版枃妗o紙Document錛変笂鐨勪緥瀛愶細

import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;

import org.dom4j.Document;
import org.dom4j.io.DocumentResult;
import org.dom4j.io.DocumentSource;

public class Foo {

public Document styleDocument(
Document document,
String stylesheet
) throws Exception {

// 浣跨敤 JAXP 鍔犺澆杞寲鍣?br />TransformerFactory factory = TransformerFactory.newInstance();
Transformer transformer = factory.newTransformer(
new StreamSource( stylesheet )
);

// 鐜板湪鏉ユ牱寮忓寲涓涓枃妗o紙Document錛?br />DocumentSource source = new DocumentSource( document );
DocumentResult result = new DocumentResult();
transformer.transform( source, result );

// 榪斿洖緇忚繃鏍峰紡鍖栫殑鏂囨。錛圖ocument錛?br />Document transformedDoc = result.getDocument();
return transformedDoc;
}
}

鍘熸枃鍦板潃
dom4j涓嬭澆鍦板潃



Vista 2006-12-09 22:41 鍙戣〃璇勮
]]>
杞紞JS姝e垯琛ㄨ揪寮忚瑙鏉ヨ嚜javaeye]http://www.aygfsteel.com/vista/archive/2006/11/10/80314.htmlVistaVistaFri, 10 Nov 2006 01:58:00 GMThttp://www.aygfsteel.com/vista/archive/2006/11/10/80314.htmlhttp://www.aygfsteel.com/vista/comments/80314.htmlhttp://www.aygfsteel.com/vista/archive/2006/11/10/80314.html#Feedback0http://www.aygfsteel.com/vista/comments/commentRss/80314.htmlhttp://www.aygfsteel.com/vista/services/trackbacks/80314.html闃呰鍏ㄦ枃

Vista 2006-11-10 09:58 鍙戣〃璇勮
]]>
vista綺劇涔?錛嶏紞javascript綃?/title><link>http://www.aygfsteel.com/vista/archive/2006/10/13/75050.html</link><dc:creator>Vista</dc:creator><author>Vista</author><pubDate>Fri, 13 Oct 2006 12:39:00 GMT</pubDate><guid>http://www.aygfsteel.com/vista/archive/2006/10/13/75050.html</guid><wfw:comment>http://www.aygfsteel.com/vista/comments/75050.html</wfw:comment><comments>http://www.aygfsteel.com/vista/archive/2006/10/13/75050.html#Feedback</comments><slash:comments>10</slash:comments><wfw:commentRss>http://www.aygfsteel.com/vista/comments/commentRss/75050.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/vista/services/trackbacks/75050.html</trackback:ping><description><![CDATA[     鎽樿: 榪欐槸涓涓皬涓滀笢錛屾湁鐨勬椂鍊欑敤鐨勭潃錛屽懙鍛點?lt;script聽language="javascript"聽>聽聽聽聽function聽leftToRight(aa,bb,cc){聽聽聽聽聽聽聽聽var聽selected;聽聽聽聽聽聽聽聽var聽b聽=聽false;聽聽聽聽聽聽聽聽var聽bLength聽=聽bb.length;聽聽聽聽聽聽聽聽for(var聽i=0;聽i聽<聽aa.len...  <a href='http://www.aygfsteel.com/vista/archive/2006/10/13/75050.html'>闃呰鍏ㄦ枃</a><img src ="http://www.aygfsteel.com/vista/aggbug/75050.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/vista/" target="_blank">Vista</a> 2006-10-13 20:39 <a href="http://www.aygfsteel.com/vista/archive/2006/10/13/75050.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> 主站蜘蛛池模板: <a href="http://" target="_blank">潢川县</a>| <a href="http://" target="_blank">集贤县</a>| <a href="http://" target="_blank">光山县</a>| <a href="http://" target="_blank">孝义市</a>| <a href="http://" target="_blank">江达县</a>| <a href="http://" target="_blank">长宁县</a>| <a href="http://" target="_blank">监利县</a>| <a href="http://" target="_blank">陇西县</a>| <a href="http://" target="_blank">洛南县</a>| <a href="http://" target="_blank">桑植县</a>| <a href="http://" target="_blank">巫溪县</a>| <a href="http://" target="_blank">奉贤区</a>| <a href="http://" target="_blank">固镇县</a>| <a href="http://" target="_blank">常宁市</a>| <a href="http://" target="_blank">盈江县</a>| <a href="http://" target="_blank">元阳县</a>| <a href="http://" target="_blank">林芝县</a>| <a href="http://" target="_blank">长宁县</a>| <a href="http://" target="_blank">西昌市</a>| <a href="http://" target="_blank">会东县</a>| <a href="http://" target="_blank">屯昌县</a>| <a href="http://" target="_blank">海阳市</a>| <a href="http://" target="_blank">嘉善县</a>| <a href="http://" target="_blank">塘沽区</a>| <a href="http://" target="_blank">西贡区</a>| <a href="http://" target="_blank">化州市</a>| <a href="http://" target="_blank">栾川县</a>| <a href="http://" target="_blank">天津市</a>| <a href="http://" target="_blank">鲁甸县</a>| <a href="http://" target="_blank">茶陵县</a>| <a href="http://" target="_blank">阿城市</a>| <a href="http://" target="_blank">博乐市</a>| <a href="http://" target="_blank">鄢陵县</a>| <a href="http://" target="_blank">凤翔县</a>| <a href="http://" target="_blank">安平县</a>| <a href="http://" target="_blank">鹰潭市</a>| <a href="http://" target="_blank">聊城市</a>| <a href="http://" target="_blank">裕民县</a>| <a href="http://" target="_blank">乌拉特中旗</a>| <a href="http://" target="_blank">桂阳县</a>| <a href="http://" target="_blank">林周县</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>