½«XMLÊý¾ÝÌî³äµ½TreeViewÖÐ
Îĵµ¼°´úÂëÏÂÔØ£ºhttp://www.dingos.cn/index.php?topic=1899.0
½éÉÜ
µ±²Ëµ¥ÏîÊǾ³£¸Ä±äʱ£¬´ÓXMLÎĵµÖд´½¨TreeView²Åµ±ÊǷdz£ÓÐÓõġ£ÀýÈ磬ʹÓÃXML×÷ΪÊý¾Ý¿â´æ´¢¼Ç¼¡£
ÕâÀïÓиö¼òµ¥Ê¾Àý¡£ÒÔ·À»ìÏýÕâ¸öÀý×ӱȽϼòµ¥¡£
±³¾°
¶ÔXML¡¢TreeView¿Ø¼þµÄÓ¦Óã¬ÔÚVisual StudioÖÐÓÐÖúÓÚÀí½âÕâЩ²½Öè¡£
ʹÓôúÂë
×¢Ò⣺Õâ¸ö½â¾ö·½°¸£¨xml2treeviewmenuSolution£©ÊÇVS2010´´½¨¡£
Ìí¼ÓÒ»¸öXMLÎļþµ½ÏîÄ¿Öв¢ÃüÃûΪ“menu.xml”¡£¸ù¾Ý²Ëµ¥Ïî±à¼XMLÎļþ¡£
<?xml version="1.0" encoding="utf-8" ?>
<root>
<folder title='folder 1a' >
<record title='record 1a1' />
<record title='record 1a2' />
<folder title='folder 1b'>
<record title='record 1b1' />
</folder>
</folder>
<folder title='folder 2a' >
<record title='record 2a1' />
</folder>
<folder title='folder 3a' >
<record title='record 3a1' />
<record title='record 3a2' />
</folder>
</root>
´ÓVisual
Studio¹¤¾ßÏäÖн«TreeView¿Ø¼þÍÏÈëWindows´°ÌåÖС£ÔÚÕâ¸öÀý×Ó£¬ÃüÃû¿Ø¼þΪ“treeViewMenu”¡£Ê¹ÓÃusingÌí¼Ó¶ÔXMLÀàµÄÒýÓá£
using System.Xml;
using System.Xml.XPath;
´´½¨Ò»¸öXMLDocument¶ÔÏóÓÃÓÚ±£´æÎļþ¡£
public partial class Form1 : Form{
private XmlDocument docXML = new XmlDocument();
µ±´°Ìå¼ÓÔØÊ±£¬´ÓXMLÎļþÖмÓÔØÌî³äTreeView¿Ø¼þµÄXMLÎĵµ¡£
private void Form1_Load(object sender, EventArgs e){
docXML.Load("menu.xml"); // ¼ÓÔØXMLÎļþ
populateBaseNodes(); // Ìî³äËùÓиù½Úµã
}
´ÓµÚÒ»¼¶<folder>½Úµã¿ªÊ¼Ìî³ä¡£½«Ã¿¸ö¸ù½ÚµãÌí¼Óµ½Ê÷ÖУ¬²¢Îªµ±Ç°¸ù¾ÝµãÌí¼Ó×ӽڵ㡣
private void populateBaseNodes(){
treeViewMenu.Nodes.Clear(); // Çå³þÒÑ´æÔÚµÄÏî
treeViewMenu.BeginUpdate(); // ¿ªÊ¼¸üÐÂTreeView
TreeNode treenode;
treenode = treeViewMenu.Nodes.Add("Folders");
XmlNodeList baseNodeList = docXML.SelectNodes("root/folder");
// »ñµÃµÚÒ»²ã <folder> ½Úµã
foreach (XmlNode xmlnode in baseNodeList){
// ±äÁ¿ËùÓеĸù½Úµã <
Ïà¹ØÎĵµ£º
µÚÒ»ÖÖ·½Ê½--ʹÓÃMSXML2.DOMDOCUMENT.4.0
´´½¨xmldoc¶ÔÏ󣬲¢×°ÔØÒ»¸öxml
Set xmldoc = CreateObject("MSXML2.DOMDOCUMENT.4.0")
xmldoc.loadXML ("Ò»¸ö¾ßÌåµÄXMLʵÌå")
Ñ¡ÔñÐèҪɸѡµÄ½áµã
Set nodeList = xmldoc.selectNodes("//*[count(ancestor::*)= 2]") '¸ù½ÚµãµÄµÚ¶þ´úºó´ú
Set nodeList = xmldoc ......
ÕâÆªÎÄÕÂÃèÊöÈçºÎͨ¹ýʹÓÃFOR XML AUTO¸üºÃµÄ¿ØÖÆXMLÊä³ö¸ñʽ¡£ÀýÈçÌí¼ÓXML±ê¼Ç¡£ÓÃÕâ¸öÀ´Ìæ´úÄÑÓÚÀí½âµÄFOR XML EXPLICIT Óï¾ä¡£Èç¹ûÄãÔÚÓ¦ÓóÌÐòÖм´½«·´ÐòÁл¯Êä³öµÄXML£¬Äã¾Í»á¾õµÃÕâ¸öÐÅÏ¢¶ÔÄãÓÐÓá£
ÔÚFor XML´Ó¾äÖУ¬Äúͨ³£Ê¹ÓÃÏÂÁз½Ê½Ö®Ò»£º
RAW
AUT ......
VS “XML Îĵµ” ˵Ã÷
1¡¢ÈçºÎÉú³É
£¨1£©¡¢ÔÚ Visual Studio ÖÐÉú³É“XML Îĵµ”ʾÀý
ÔÚ“½â¾ö·½°¸×ÊÔ´¹ÜÀíÆ÷”ÖÐÓÒ»÷¸ÃÏîÄ¿£¬ÔÙµ¥»÷“ÊôÐÔ”¡£
´ò¿ª“ÅäÖÃÊôÐÔ”Îļþ¼Ð£¬È»ºóµ¥»÷“Éú³É”¡£
½«“XML ÎĵµÎļþ”ÊôÐÔÉèÖÃΪ XMLsample.xml¡£
Ô ......
ÔÚʹÓÃDom4j½âÎöxmlÎĵµÊ±,ÎÒÃǺÜÏ£ÍûÓÐÒ»ÖÖÀàËÆÕýÔò±í´ïʽµÄ¶«Î÷À´¹æ·¶²éѯÌõ¼þ,¶øxpathÕýÊÇÕâÑùÒ»ÖֺܱãÀûµÄ¹æÔò°É.
ÒÔÏÂÊDZ¾ÈËÓÃдµÄÒ»¸öÀà,ժȡ²¿·Ö´úÂë;
Java´úÂë
Java´úÂë
String xmlName = path + "/" + userName + ".xml"; &n ......
xmlÎļþ£º
<?xml version="1.0" encoding="iso-8859-1"?>
<Products>
<product>
<name>lovechoosesun</name>
<buyNowURL>http://merch.danecook ......