C#¶ÔXML¶Áд
×ªÔØ×Ô£ºhttp://virgos.javaeye.com/blog/611146
Ò»£®Ç°ÑÔ£º
XMLÊÇ΢Èí.NetÕ½ÂÔµÄÒ»¸öÖØÒª×é³É²¿·Ö£¬¶øÇÒËü¿ÉνÊÇXML Web·þÎñµÄ»ùʯ£¬ËùÒÔÕÆÎÕ.Net¿ò¼ÜϵÄXML¼¼Êõ×ÔÈ»ÏԵ÷dz£ÖØÒªÁË¡£±¾ÎĽ«Ö¸µ¼´ó¼ÒÈçºÎÔËÓÃC#ÓïÑÔÍê³É.Net¿ò¼ÜϵÄXMLÎĵµµÄ¶Áд²Ù×÷¡£Ê×ÏÈ£¬ÎÒ»áÏò´ó¼Ò½éÉÜ.Net¿ò¼ÜÖÐÓëXMLÏà¹ØµÄÃüÃû¿Õ¼äºÍÆäÖеÄÖØÒªÀà¡£Æä´Î£¬ÎÒ»¹»á¸ø³öÓйصÄʵÀýÒÔʹ¶ÁÕ߸ü½øÒ»²½µÄÁ˽âXMLÎĵµµÄ¶Áд²Ù×÷µÄ¾ßÌå·½·¨¡£
¶þ£®XMLÃüÃû¿Õ¼äºÍÏà¹ØÀà¼ò½é£º
ÔÚÉîÈë½øÐÐ.Net¿ò¼ÜϵÄXMLÎĵµµÄ²Ù×÷֮ǰ£¬ÎÒÏëºÜÓбØÒªÏò´ó¼Ò½éÉÜ.Net¿ò¼ÜÖÐÓëXML¼¼ÊõÓйصÄÃüÃû¿Õ¼äºÍÆäÖÐÒ»Ð©ÖØÒªµÄÀà¡£.Net ¿ò¼ÜΪÎÒÃÇÌṩÁËÒÔÏÂһЩÃüÃû¿Õ¼ä£ºSystem.Xml¡¢System.Xml.Schema¡¢ System.Xml.Serialization¡¢System.Xml.XpathÒÔ¼° System.Xml.XslÀ´°üÈݺÍXML²Ù×÷Ïà¹ØµÄÀà¡£
System.XmlÃüÃû¿Õ¼ä°üº¬ÁËһЩ×îÖØÒªµÄXMLÀ࣬ÆäÖÐ×îÖ÷ÒªµÄÀàÊǺÍXMLÎĵµµÄ¶Áд²Ù×÷Ïà¹ØµÄÀà¡£ÕâЩÀàÖаüÀ¨4¸öÓë¶ÁÏà¹ØµÄÀàÒÔ¼° 2 ¸öÓëдÏà¹ØµÄÀà¡£ËüÃÇ·Ö±ðÊÇ£ºXmlReader¡¢XmlTextReader¡¢ XmlValidatingReader¡¢XmlNodeReader¡¢XmlWriterÒÔ¼° XmlTextWriter¡£±¾ÎĽ«Öصã½éÉÜÕâЩÀ࣬ÒòΪËüÃÇÊÇ×î»ù±¾Ò²ÊÇ×îÖØÒªµÄÀà¡£
XmlReaderÀàÊÇÒ»¸öÐé»ùÀ࣬Ëü°üº¬Á˶ÁXMLÎĵµµÄ·½·¨ºÍÊôÐÔ¡£¸ÃÀàÖеÄRead·½·¨ÊÇÒ»¸ö»ù±¾µÄ¶ÁXMLÎĵµµÄ·½·¨£¬ËüÒÔÁ÷ÐÎʽ¶ÁÈ¡ XMLÎĵµÖеĽڵ㣨Node£©¡£ÁíÍ⣬¸ÃÀ໹ÌṩÁËReadString¡¢ReadInnerXml¡¢ ReadOuterXmlºÍReadStartElementµÈ¸ü¸ß¼¶µÄ¶Á·½·¨¡£³ýÁËÌṩ¶ÁXMLÎĵµµÄ·½·¨Í⣬XmlReaderÀ໹Ϊ³ÌÐòÔ±ÌṩÁË MoveToAttribute¡¢MoveToFirstAttribute¡¢MoveToContent¡¢MoveToFirstContent¡¢ MoveToElementÒÔ¼° MoveToNextAttributeµÈ¾ßÓе¼º½¹¦Äܵķ½·¨¡£ÔÚ±¾ÎĺóÃæ½éÉܵÄʵÀýÖУ¬ÎÒÃǽ«ÔËÓõ½ÕâЩ·½·¨¡£
XmlTextReader¡¢XmlNodeReaderÒÔ¼°XmlValidatingReaderµÈÀàÊÇ´ÓXmlReaderÀà¼Ì³Ð¹ýÀ´µÄ×ÓÀà¡£¸ù¾ÝËüÃǵÄÃû³Æ£¬ÎÒÃÇ¿ÉÒÔÖªµÀÆä×÷Ó÷ֱðÊǶÁÈ¡Îı¾ÄÚÈÝ¡¢¶ÁÈ¡½ÚµãºÍ¶ÁÈ¡XMLģʽ£¨Schemas£©¡£
XmlWriterÀàΪ³ÌÐòÔ±ÌṩÁËÐí¶àдXMLÎĵµµÄ·½·¨£¬ËüÊÇXmlTextWriterÀàµÄ»ùÀ࣬ÎÒÔÚºóÃæµÄʵÀýÖÐ»á¸ø³öÏà¹ØµÄÔËÓ÷½·¨¡£
XmlNodeÀàÊÇÒ»¸ö·Ç³£ÖØÒªµÄÀ࣬Ëü´ú±íÁËXMLÎĵµÖеÄij¸ö½Úµã¡£¸Ã½Úµã¿ÉÒÔÊÇXMLÎĵµµÄ¸ù½Úµã£¬ÕâÑùËü¾Í´ú±íÕû¸öXMLÎĵµÁË¡£ËüÊÇÐí¶àºÜÓÐÓõÄÀàµÄ»ùÀ࣬ÕâЩÀà°üÀ¨²åÈë½ÚµãµÄÀࡢɾ³ý½ÚµãµÄÀà¡¢Ìæ»»½ÚµãµÄÀàÒÔ¼°ÔÚXMLÎĵµÖÐÍê³Éµ¼º½¹¦ÄܵÄÀࡣͬʱ£¬XmlNodeÀ໹Ϊ³ÌÐòÔ
Ïà¹ØÎĵµ£º
Jdom
¶ÁÈ¡
xml
ÎļþÀý×Ó
1.
ÓÃ
JDOM
¶ÁÈ¡
XML
ÎļþÐèÏÈÓÃ
org.jdom.input.SAXBuilder
¶ÔÏóµÄ
build()
·½·¨´´½¨
Document
¶ÔÏó
,
È»ºóÓÃ
Document
Àà¡¢
Element
ÀàµÈµÄ·½·¨¶ÁÈ¡
1.
Sample1.java
import
java.util.*;
import
org.j ......
Ó¦Ò»Î»ÍøÓѵÄÐèÇ󣬲¢ÐÞÕýÁËMVPÀîºé¸ù".NETƽ̨ÏÂWEBÓ¦ÓóÌÐòµÄ²¿Êð(°²×°Êý¾Ý¿âºÍ×Ô¶¯ÅäÖÃ)"ÖеÄosqlÓ÷¨´íÎó£¬ÒѲâÊÔͨ¹ý¡£
Ò»).´´½¨²¿ÊðÏîÄ¿
1. ÔÚ“Îļþ”²Ëµ¥ÉÏÖ¸Ïò“Ìí¼ÓÏîÄ¿”£¬È»ºóÑ¡Ôñ“н¨ÏîÄ¿”¡£
2. ÔÚ“Ìí¼ÓÐÂÏîÄ¿”¶Ô»°¿òÖУ¬Ñ¡Ôñ“ÏîÄ¿ÀàÐÍ”´°¸ñÖ ......
JAVA¶ÔÏóת»»ÎªXML¸ñʽ
¼òµ¥µÄ²üÊöÏÂÈçºÎ½«JAVA¶ÔÏóת»»ÎªXML¸ñʽ£¬ÏêϸÁ˽âÇë½øÈëhttp://xstream.codehaus.org/tutorial.html
JAVABEAN¶ÔÏó
userInfo.java
private String name;
& ......
/*
Êý¾Ý¿â²éѯXML½á¹¹£¬FOR XML PATH Óï¾äµÄÓ¦ÓÃ
*/
FOR XML PATH Óï¾äµÄÓ¦ÓÃ:
CREATE TABLE TempTable(UserID int , UserName nvarchar(50));
insert into TempTable (UserID,UserName) values (1,'a')
insert into TempTable (UserID,UserName) values (2,'b')
select UserID,UserName from TempTable FOR ......