XmlÖÐSelectSingleNode·½·¨ÖеÄxpathÓ÷¨
×î³£¼ûµÄXMLÊý¾ÝÀàÐÍÓУºElement, Attribute£¬Comment, Text.
Element, Ö¸ÐÎÈç<Name>Tom<Name>µÄ½Úµã¡£Ëü¿ÉÒÔ°üÀ¨£ºElement, Text, Comment, ProcessingInstruction, CDATA, and EntityReference.
Attribute, Ö¸ÔÚ<Employee >ÖеĴÖÌ岿·Ö¡£
Comment£¬Ö¸ÐÎÈ磺<!-- my comment --> µÄ½Úµã¡£
Text£¬Ö¸ÔÚ<Name>Tom<Name>µÄ´ÖÌ岿·Ö¡£
ÔÚXMLÖУ¬¿ÉÒÔÓÃXmlNode¶ÔÏóÀ´²ÎÕÕ¸÷ÖÖXMLÊý¾ÝÀàÐÍ¡£
2.1 ²éѯÒÑÖª¾ø¶Ô·¾¶µÄ½Úµã£¨¼¯£©
objNodeList = objDoc.SelectNodes(“Company/Department/Employees/Employee”)
»òÕß
objNodeobjNodeList = objNode.SelectNodes(“/Company/Department/Employees/Employee”)
ÒÔÉÏÁ½ÖÖ·½·¨¿É·µ»ØÒ»¸öNodeList¶ÔÏó£¬Èç¹ûÒª·µ»Øµ¥¸ö½Úµã¿ÉʹÓÃSelectSingleNode·½·¨£¬¸Ã·½·¨Èç¹û²éѯµ½Ò»¸ö»ò¶à¸ö½Úµã£¬·µ»ØµÚÒ»¸ö½Úµã£»Èç¹ûûÓвéѯµÄÈκνڵ㷵»Ø Nothing¡£ÀýÈ磺
objNodeobjNode = objNode.SelectSingleNode(“/Company/Department/Employees/Employee”)
If Not (objNode is Nothing) then
‘- Do process
End If
2.2 ²éѯÒÑÖªÏà¶Ô·¾¶µÄ½Úµã£¨¼¯£©
¿ÉʹÓÃÀàËÆÓÚÎļþ·¾¶µÄÏà¶Ô·¾¶µÄ·½Ê½À´²éѯXMLµÄÊý¾Ý
objNode = objDoc.SelectSingleNode(“Company/Department”)
objNodeobjNodeList = objNode.SelectNodes(“../Department)
objNodeobjNode = objNode.SelectNode(“Employees/Employee”)
2.3 ²éѯÒÑÖªÔªËØÃûµÄ½Úµã£¨¼¯£©
ÔÚʹÓò»¹æÔòµÄ²ã´ÎÎĵµÊ±£¬ÓÉÓÚ²»ÖªµÀÖмä²ã´ÎµÄÔªËØÃû£¬¿ÉÊ
Ïà¹ØÎĵµ£º
Android ÊÇÕë¶ÔÒÆ¶¯É豸µÄÒ»ÖÖÐÂÐ˵ĿªÔ´²Ù×÷ϵͳºÍ SDK¡£½èÖúËü£¬Äú¿ÉÒÔ´´½¨¹¦ÄÜÇ¿´óµÄÒÆ¶¯Ó¦ÓóÌÐò¡£µ±ÄúµÄÓ¦ÓóÌÐò¿ÉÒÔ·ÃÎÊ Web ·þÎñʱ£¬ÆäÎüÒýÁ¦»á´ó´óÔö¼Ó£¬ÕâÒâζ×ÅÄúÐèҪʹÓà Web ÓïÑÔ£ºXML¡£ÔÚ±¾ÎÄÖУ¬Äú½«Á˽âÔÚ Android ÉÏʹÓà XML µÄ²»Í¬·½·¨£¬ÒÔ¼°ÈçºÎʹÓÃËüÃǹ¹½¨×Ô¼ºµÄ Android Ó¦ÓóÌÐò¡£
ÈëÃÅ
ÔÚ±¾ÎÄÖÐ ......
Ò»¸öXMLÎļþͨ³£°üº¬ÎļþÍ·ºÍÎļþÌåÁ½´ó²¿·Ö
1. ÎļþÍ·
XMLÎļþÍ·ÓÉXMLÉùÃ÷ÓëDTDÎļþÀàÐÍÉùÃ÷×é³É¡£ÆäÖÐDTDÎļþÀàÐÍÉùÃ÷ÊÇ¿ÉÒÔȱÉٵ쬹ØÓÚDTDÉùÃ÷½«ÔÚºóÐøµÄÄÚÈÝÖнéÉÜ£¬¶øXMLÉùÃ÷ÊDZØÐëÒªÓеģ¬ÒÔʹÎļþ·ûºÏXMLµÄ±ê×¼¹æ¸ñ¡£
ÔÚÇ°ÃæµÄFlowers.xmlÎļþÖеĵÚÒ»ÐдúÂ뼴ΪXMLÉùÃ÷£º
<?xml °æ ......
<?
XML DOM¶ÁÈ¡½ÚµãÐÅÏ¢Óöµ½ÎÊÌâ×ܽ᣺
1:NodeList: ʹÓýڵãµÄchildNodesÊôÐÔ»òÕßdocument¶ÔÏóµÄgetElementsByTagName()·½·¨£¬¾Í»á·µ»ØÒ»¸ö°üº¬½ÚµãÁбíµÄNodeList
2: ÔÚ XML DOM ÖУ¬½ÚµãµÄ¹ØÏµ±»¶¨ÒåΪ½ÚµãµÄÊôÐÔ£º
· parentNode
· childNodes
· ......
import java.io.File;
import java.io.FileNotFoundException;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class ResolveXmlFile {
public void resolverXml() throws DocumentException, FileNotFoundExcept ......