VC++ÖÐÀûÓÃMSXML½âÎöXMLÎĵµ
¡¡¡¡Ò»¡¢ XML ¼ò½é
¡¡¡¡XML£¨Xtensible Markup Language£¬¼´À©Õ¹±ê¼ÇÓïÑÔ£©µÄ·¢Õ¹ÆðÔ´ÓÚ1996Äê¡£µ±Ê±£¬³ö°æ½ç¾ÞÍ·ºÍWebÒµÄÚÈËÊ¿¾¹ý¹²Í¬ÌÖÂÛ£¬Ìá³öÁË´´½¨SGML£¨Standard Generalized Markup Language£¬¼´±ê׼ͨÓñêʶÓïÑÔ£©×Ó¼¯£¨HML£©µÄ½¨Òé¡£¸Ã×Ó¼¯×¨ÓÃÓÚWeb£¬¾ßÓпÉÀ©Õ¹£¨»ò¿ÉÀ©³ä£©ÐÔ£¬²¢ÇÒÄÜÀûÓýṹ»¯±ê¼ÇÓïÑÔµÄËùÓи߼¶¹¦ÄÜ£¬µ«ÞðÆúÁËSGMLµÄ¸´ÔÓÐÔ¡£XML¹æ·¶µÄµÚÒ»·Ý²Ý¸åÓÚ1996Äê11Ô·¢²¼ºó²»¾Ã£¬1997Äê1ÔÂÊ׸öXML½âÎöÆ÷¾ÍÃæÊÀÁË¡£Ëæºó£¬±ã³öÏÖÁËXMLµÄ Ó¦ÓÃÒÔ¼°ÐµĹ淶ºÍ½âÎöÆ÷¡£
¡¡¡¡HTML(Hypertext Markup Language)ÓïÑÔÊÇ´ó¼ÒËùÊìϤµÄ¿ª·¢ÍøÒ³µÄÒ»ÖÖ±ê¼ÇÓïÑÔ£¬µ«Ëü²»ÊÇÒ»ÖÖ±à³ÌÓïÑÔ£¬ËüµÄÖ÷Òª±ê¼ÇÊÇÕë¶ÔÎĵµÄÚÈݱ¾Éí½á¹¹µÄÃèÊö£¬Òò»úÆ÷±¾ÉíÊDz»Äܹ»½âÎöËüµÄÄÚÈݵġ£XMLÓïÑÔÊÇSGMLÓïÑÔµÄ×Ó¼¯£¬Ëü±£ÁôÁËSGMLÖ÷ÒªµÄʹÓù¦ÄÜ£¬Í¬Ê±´ó´ó¼õСÁËSGMLµÄ¸´ÔÓÐÔ¡£Ëü²»½öÄܱíʾÎĵµµÄÄÚÈÝ£¬¶øÇÒ¿ÉÒÔ±íʾÎĵµµÄ½á¹¹£¬ÕâÑùÔÚÄܹ»±»ÈËÀàÀí½âµÄͬʱ£¬Ò²Äܹ»±»»úÆ÷ËùÀí½â¡£ËäÈ»HTMLÊÇSGMLµÄÒ»¸öÓ¦Óã¬XMLÊÇSGMLµÄÒ»¸ö×Ó¼¯£¬µ«ÊÇXML¾ø²»ÊÇÔÚ HTMLÉÏÌí¼ÓÄ³Ð©ÔªËØ¶øÐγɵģ¬ËüÃÇÖ®¼äÊÇÓкܴóÇø±ðµÄ¡£×î´óµÄÇø±ð¾ÍÊÇXMLÔÊÐíʹÓÃÕßΪijÖÖÌØÊâÄ¿µÄ¶ø¶¨Òå×ÔÒѵÄÔªËØ¡£³ý´ËÖ®Í⣬ÁíÒ»¸ö×îÖ÷ÒªµÄÇø±ð¾ÍÊÇXMLÖÂÁ¦½â¾öµÄÎÊÌ⣬ÕýÊÇÔÚʹÓÃHTMLʱËùÓöµ½µÄÒ»Ð©ÌØÊâÎÊÌâ¡£
¡¡¡¡XMLÒªÇó×ñÑÒ»¶¨µÄÑϸñ±ê×¼£¬Æä·ÖÎö³ÌÐò±ÈHTMLä¯ÀÀÆ÷¶ÔÓï·¨ºÍ½á¹¹µÄÒªÇó¸ü¼ÓÑϸñ¡£XMLÎĵµÃ¿´Î·ÖÎöµÄ½á¹û¶¼Ò»Ö£¬¶øHTMLÔÚ²»Í¬µÄä¯ÀÀÆ÷ ÖпÉÄÜ»á×÷³ö²»Í¬µÄ·ÖÎöºÍÏÔʾ¡£Í¬Ê±£¬XML±ê×¼ÊǶÔÊý¾ÝµÄ´¦ÀíÓ¦Ó㬶ø²»Ö»ÊÇÕë¶ÔWebÒ³µÄ£¬Ëü»¹¿ÉÉæ¼°µ½Êý¾Ý¿âµç×ÓÉÌÎñϵͳ£¬ÒÔ¼°ÈκÎÏÔʾϵͳµÄ¸ß¼¶Ó¦Ó᣿ª·¢Õ߿ɸù¾ÝÌØ¶¨µÄ¹¤ÒµÐèÇó£¬ÀûÓÃXML´´½¨×Ô¶¨ÒåµÄÊý¾Ý½á¹¹¡£ÕâЩÊý¾Ý½á¹¹ºÍÊý¾Ý¿â¿ÉÒÔÔÚÐí¶àÉ豸Éϲ鿴£¬¶ø²»ÐèҪʹÓÃ×Ô¶¨ÒåµÄ½Ó¿ÚÔÚ²»Í¬µÄÏÔʾÉ豸Éϲ鿴ÏàͬµÄÊý¾Ý¡£
¡¡¡¡XMLÖ÷ÒªÓÐÈý¸öÒªËØ£ºÎĵµÀàÐÍÉùÃ÷(DTD£ºDocument Type Declaration)»òXML Schema(XML´ó¸Ù)¡¢¿ÉÀ©Õ¹ÑùʽÓïÑÔ(XSL£ºeXtensible Stylesheet Language)ºÍ¿ÉÀ©Õ¹Á´½ÓÓïÑÔ£¨XLink£ºeXtensible Link Language£©¡£DTDºÍXML´ó¸Ù¹æ¶¨ÁËXMLÎļþµÄÂß¼½á¹¹£¬¶¨ÒåÁËXMLÎļþÖеÄÔªËØ¡¢ÔªËصÄÊôÐÔÒÔ¼°ÔªËØÓëÔªËØÊôÐÔÖ®¼äµÄ¹ØÏµ£» Namespace(ÃûÓò)ʵÏÖÁËͳһµÄXMLÎĵµÊý¾Ý±íʾÒÔ¼°Êý¾ÝµÄÏ໥¼¯³É£»XSLÊÇÓÃÓڹ涨XMLÎĵµ³ÊÏÖÑùʽµÄÓïÑÔ£¬ËüʹµÃÊý¾ÝÓëÆä±íÏÖÐÎʽÏ໥ ¶ÀÁ¢£¬±ÈÈçXSLÄÜʹWebä¯ÀÀÆ÷¸Ä±äÎĵµµÄ±íʾ·¨£¬ÈçÊý¾ÝÏÔʾ˳ÐòµÄ±ä»¯£¬²»ÐèÒªÔÙ
Ïà¹ØÎĵµ£º
ÔÙÉÏһƪ£¬ÎÒÃǽéÉÜÁË»ù±¾µ÷ÊÔ¡£Ö®Ç°Ò²ËµÁË£¬Ö®ËùÒ԰ѵ÷ÊÔ·ÅÔÚÇ°Ãæ½²ÊÇÒòΪºóÃæµÄÎÄÕ»ù±¾¶¼»áÓõ½µ÷ÊÔ¡£¹Û²ìÎÒÃǵijÌÐòµ½µ×·¢ÉúÁËʲô¡£ÈÃÎÒÃÇÄܹ»Ö±½ÓÃ÷Á˵Ŀ´Çå³þÎÊÌâµÄ±¾ÖÊ¡£±¾Æª½«ÉîÈëÒ»µã½éÉÜÖ¸ÕëÕâ¸öÈÃÎÞÊý³õѧÕßη¾åµÄ¶«Î÷¡£Ï£Íû´ó¼ÒÔÙ¿´Í걾ƪ֮ºóÄܶÔÖ¸ÕëÓÐеÄÈÏʶ£¬Ö®ºó²»ÔÙ¾åÅÂËü¡£¾õµÃËü¾ÍÄÇô»ØÊ¡£ÄÇÏÂÃæÎÒ ......
֮ǰµÄ¶¨Î»¿ÉÄÜÖ÷ҪΪÁËÑо¿µ×²ã¼°Ò»Ð©½Ï¸´ÔÓµÄÎÊÌâÉÏ£¬¶øºöÂÔÁËһЩ³õѧµÄÅóÓÑ¡£µ¼ÖÂËûÃÇ¿ÉÄÜÒ»½øÀ´¾ÍÓеã“Íû¶øÉúη”µÄ¸Ð¾õ£¨×ÔÚ¼Á˹þ£¬ÅÄש£¡£©¡£Ó¦¹ÖÊÞȺÀïÐֵܼ°Ò»Ð©ÅóÓѵĽ¨Ò飬ͬʱҲΪÁ˰Ñ×Ô¼ºµÄ¾Ñé¼°±à³Ì·½ÃæµÄһЩÏë·¨·ÖÏí¸ø´ó¼Ò¡£Òò´Ë´òËãдһЩCC++ÓïÑÔ»ù´¡ÈëÃŵIJ©ÎÄ¡£
´Ó±¾Ä£¿éÖУ¬´ó¼Ò¿ÉÒÔÁ˽â ......
Ò».ÕªÒª
.NetÔÊÐí¿ª·¢ÈËÔ±ÔÚÔ´´úÂëÖвåÈëXML×¢ÊÍ£¬ÕâÔÚ¶àÈËÐ×÷¿ª·¢µÄʱºòÏÔµÃÌØ±ðÓÐÓᣠC#½âÎöÆ÷¿ÉÒÔ°Ñ´úÂëÎļþÖеÄÕâЩXML±ê¼ÇÌáÈ¡³öÀ´£¬²¢×÷½øÒ»²½µÄ´¦ÀíΪÍⲿÎĵµ¡£ ÕâÆªÎÄÕ½«Õ¹Ê¾ÈçºÎʹÓÃÕâЩXML×¢ÊÍ¡£ ÔÚÏîÄ¿¿ª·¢ÖУ¬ºÜ¶àÈ˲¢²»ÀÖÒâд·±ÔÓµÄÎĵµ¡£µ«ÊÇ£¬¿ª·¢×鳤ϣÍû´úÂë×¢Ê;¡¿ÉÄÜÏêϸ£»ÏîÄ¿ ......
XML CDATA Îı¾
ËùÓÐ XML ÎĵµÖеÄÎı¾¾ù»á±»½âÎöÆ÷½âÎö¡£
Ö»ÓÐ CDATA Çø¶Î£¨CDATA section£©ÖеÄÎı¾»á±»½âÎöÆ÷ºöÂÔ¡£
Parsed Data
XML ½âÎöÆ÷ͨ³£»á½âÎö XML ÎĵµÖÐËùÓеÄÎı¾¡£
µ±Ä³¸ö XML ÔªËØ±»½âÎöʱ£¬Æä±êǩ֮¼äµÄÎı¾Ò²»á±»½âÎö£º
<message>´ËÎı¾Ò²»á±»½âÎö</message>
½âÎöÆ÷Ö®ËùÒÔÕâô×öÊÇÒòÎ ......
try { //Internet Explorer
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false";
xmlDoc.loadXML(data);
} catch(e) { //Other Browsers
parser=new DOMParser();
xmlDoc=parser.parsefromString(data,"text/xml");
} ......