C#СTip£ºXml²Ù×÷¼òÃ÷ÊÖ²á 3
3£©¶ÁÈ¡¡¢²éÕÒ
µ±ÄãÊÖÍ·ÓÐÒ»¸öxmlÎļþºó£¬¿ÉÒÔʹÓÃXmlDocument.Load()·½·¨½«Æä¼ÓÔؽøÀ´ÒԱ㴦Àí£¬ËùÒÔ“¶ÁÈ¡”ûÓÐʲô¿É˵µÄ¡£¶ø“²éÕÒ”²Ù×÷ÍùÍùÉæ¼°XPath£¬ÕâÀïÖ»ÊÇÎÒÈÏΪµÄ±È½Ï³£Óõ½µÄ²éÕÒ²Ù×÷£¬XPathÕâÍæÒâʵÔÚÊǺÜÇ¿´óºÜ±©Á¦¡£
»ØÍ·¿´Ê¾ÀýÎĵµxmlsample.xml£¬ÎÒÃÇ¿ÉÄÜÓöµ½ÕâÑùµÄÐèÇó£º
£¨A£©²éÕÒ¸èÇú“Hurt”µÄÑݳªÕߣ¿
£¨B£©²éÕÒÁ÷ÅÉΪ“R&B”µÄ¸èÇúÃû³Æ£¿
£¨C£©²éÕÒ·¢ÐÐÄê·ÝÔÚ2004ÒÔÇ°µÄ¸èÇúµÄÑݳªÕߣ¿
£¨D£©µ¹ÊýµÚ¶þÊ׸èµÄ¸èÇúÃû³Æ£¿
Õë¶ÔÉÏÊöÎÊÌ⣬Ä㵱Ȼ¿ÉÒÔͨ¹ýµÝ¹é±éÀú¸÷½áµãÀ´²éÕÒ£¬²»¹ýʹÓÃXPath½«ÊǸüΪ¸ßЧµÄ·½°¸£º
ÎÊÌ⣨A£©
Code
XmlDocument doc = new XmlDocument();
doc.Load("xmlsample.xml");
//
XmlNodeList xnl = doc.SelectNodes("/music/song[@title='Hurt']/artist");
foreach (XmlNode n in xnl)
{
Console.WriteLine(n.InnerText);
}
£¨ÒÔ“/”ÆðʼµÄ·¾¶±Ø¶¨ÊǾø¶Ô·¾¶£¬¼´´Ó¸ùÔªËØÆ𡣶ø¶ÔÊôÐÔµÄÒýÓÃÇ°ÃæÒª¼Ó“@”£©
ÎÊÌ⣨B£©
Code
XmlDocument doc = new XmlDocument();
doc.Load("xmlsample.xml");
//
XmlNodeList xnl = doc.SelectNodes("/music/song[genre='R&B']");
foreach (XmlNode n in xnl)
{
if (n is XmlElement)
{
Console.WriteLine(((XmlElement)n).GetAttribute("title"));
}
}
£¨²»Í¬ÓÚ¶ÔÊôÐÔµÄÒýÓ㬶Ô×Ó½ÚµãµÄÒýÓò»ÐèҪʹÓÓ@”£©
ÎÊÌ⣨C£©
Code
XmlDocument doc = new XmlDocument();
doc.Load("xmlsample.xml");
//
XmlNodeList xnl = doc.SelectNodes("/music/song[year<2004]/artist");
foreach (XmlNode n in xnl)
{
Console.WriteLine(n.InnerText);
}
£¨ÊýÖµÒ»Ñù¿ÉÒԱȽϡ££©
ÎÊÌ⣨D£©
Code
XmlDocument doc = new XmlDocument();
doc.Load("xmlsample.xml");
//
XmlNode n = doc.SelectSingleNode("/music/song[last()-1]");
if (n is XmlElement)
{
Console.WriteLine(((XmlElement)n).GetAttribute("title"));
}
£¨¾ßÓÐһϵÁеÄÄÚÖú¯Êý£¬Èçlast()¡¢po
Ïà¹ØÎĵµ£º
C#
DataSet ds = new DataSet();
ds.ReadXml(Server.MapPath("~/Config/User_yhlx_Jb.xml"));
DataView dv = ds.Tables[0].DefaultView;
//dv.RowFilter = "State=0";
this.DropDownList1.DataSource = dv;
this.DropDownList1.DataTextField = "text";
this ......
XML Schema ²Î¿¼ÊÖ²á
XSD ÔªËØ
ÔªËØ
½âÊÍ
all
¹æ¶¨×ÓÔªËØÄܹ»ÒÔÈÎÒâ˳Ðò³öÏÖ£¬Ã¿¸ö×ÓÔªËؿɳöÏÖÁã´Î»òÒ»´Î¡£
annotation
annotation ÔªËØÊÇÒ»¸ö¶¥²ãÔªËØ£¬¹æ¶¨ schema µÄ×¢ÊÍ¡£
any
ʹ´´×÷Õß¿ÉÒÔͨ¹ýδ±» schema ¹æ¶¨µÄÔªËØÀ´À©Õ¹ XML Îĵµ¡£
anyAttribute
Ê ......
ÔÏÈÒ»Ö±ÓÃBinaryFormatterÀ´ÐòÁл¯Í¦ºÃ£¬¿ÉÊÇ×î½ü·¢ÏÖÔÚWinCEÏÂÊÇûÓа취½øÐÐBinaryFormatter²Ù×÷£¬ºÜ²»Ë¬£¬Ö»ÄܸijÉÁËBinaryWriterºÍBinaryReaderÀ´¶Áд£¬Í»È»Ïëµ½Äܲ»ÄÜÓÃXMLÀ´ÐòÁл¯£¿ÓÚÊÇÔÚÍøÉϲéÁËЩ×ÊÁϱãдÁËЩʵ¼ùÐÔ´úÂ룬×öЩ¼Ç¼£¬±ÜÃâÒÔºóÍü¼Ç¡£
ÐòÁл¯¶ÔÏó
public class People
......
1£©XmlÎĵµÊ¾Àý£¨xmlsample.xml£©£º
Code
<?xml version="1.0" encoding="iso-8859-1" ?>
<music>
<song title="Oh,girl">
<artist>The Chi-lites</artist>
<genre>Soul</genre>
&nb ......
2£©ÈçºÎ´´½¨Ò»¸öxmlÎĵµ
ÓÉÓÚxmlʵÖÊÒ²Ö»ÊÇÒ»¸öÎı¾Îļþ£¬ËùÒÔ×î¼òµ¥Äã¿ÉÒÔÖ±½ÓʹÓÃSystem.IOϵÄÀàÉú³ÉÒ»¸öÎļþ£¬²¢´æ´¢³ÉxmlÎļþ£¬µ±È»£¬ÄãÐèÒªÊÖ¶¯±£Ö¤¸ÃÎļþÐÎʽÁ¼ºÃ£¬±ÈÈç±ØÐëÓиùÔªËØ¡¢±ØÐëÓйرձêÇ©¡¢±ØÐëÕýȷǶÌ׵ȵȡ£
Èç¹ûÄãÀÁµÃ×Ô¼ºÈ¥ÏëÎļþµÄÐÎʽ£¬¿ÉÒÔʹÓÃSystem.XmlϵÄÀà¡£
Code
Xml ......