¼òµ¥µÄXMLÎļþ¶Áд £¨×ª£©
×¼±¸
¿ª·¢¹¤¾ß£ºVS2005£¬
ǰÌ᣺°²×°msxml6½âÎöÆ÷£¬msÍøÕ¾¿ÉÏÂÔØ
ͨ¹ýÏòµ¼´´½¨VC++ MFC ¹¤³Ì£¬»ùÓÚ¶Ô»°¿ò
Ìí¼ÓÒýÓÃ:
//ÔÚStdAfx.hÖÐÒýÈ붯̬Á´½Ó¿â MSXML.DLL(C:\windows\system32\msxml6.dll)
#import <msxml6.dll>
±à¼×ÊÔ´£¬Ìí¼Ó¿Ø¼þ
ÔÚbookid¶ÔÓ¦µÄÎı¾¿òÓÒ¼ü£¬Ìí¼Ó±äÁ¿°ó¶¨£¨ÈçÏÂͼ£¬°ó¶¨¿Ø¼þÖµ£¬±äÁ¿ÃûΪ:m_strId)
¼ÌÐø¸øÁíÍâÁ½¸öÎı¾¿òÒ²°ó¶¨±äÁ¿£¬·Ö±ðΪ£ºm_strAuthor£¬m_strTitle
¶¨ÒåÈ«¾Ö±äÁ¿
MSXML2::IXMLDOMDocumentPtr pDoc;//xmlÎĵµÖ¸Õë
long bookIndex,bookCount ;//xmlÄÚÈÝÖУ¬µ±Ç°Ë÷ÒýÓëbookÊýÁ¿£¬ÓÃÓÚÏÔʾ”ÉÏÒ»Ìõ¼Ç¼”ºÍ”ÏÂÒ»Ìõ¼Ç¼”
_bstr_t xmlfile;//xmlÎĵµÂ·¾¶
×¢²áʼþ
Ë«»÷¸÷¸ö°´¼ü£¬Ìí¼Óʼþ°ó¶¨
дÈëxml·½·¨£º
void CMFC2005Dlg::OnBnClickedButtonWritexml()
{
UpdateData();
if (pDoc!=NULL) pDoc=NULL;
//´´½¨DOMDocument¶ÔÏó
HRESULT hr = pDoc.CreateInstance(__uuidof(MSXML2::DOMDocument60));
if(!SUCCEEDED(hr))
{
MessageBox( _T("ÎÞ·¨´´½¨DOMDocument¶ÔÏó£¬Çë¼ì²éÊÇ·ñ°²×°ÁËMS XML Parser ÔËÐпâ!"));
return ;
}
MSXML2::IXMLDOMElementPtr xmlRoot ;
//¸ù½ÚµãµÄÃû³ÆÎªBooks
xmlRoot=pDoc->createElement((_bstr_t)"Books");
//´´½¨¸öbook½Úµã
for (int i=0;i<10;i++)
{
//´´½¨bookÔªËØ²¢Ìí¼Óµ½booksÖÐ
MSXML2::IXMLDOMElementPtr xmlBootNode ;
xmlBootNode=pDoc->createElement((_bstr_t)"Book");
//ÉèÖÃÊôÐÔ
CString idvalue;
idvalue.Format(_T("%s%d"), m_strId, i);
xmlBootNode->setAttribute("id",(_bstr_t)idvalue);
//ϼ¶½áµã
MSXML2::IXMLDOMElementPtr pNode;
//Ìí¼Ó“author”ÔªËØ
CString authorValue ;
authorValue.Format(_T("%s%d"),m_strAuthor,i);
pNode=pDoc->createElement((_bstr_t)"Author");
pNode->Puttext((_bstr_t)authorValue);
xmlBootNode->appendChild(pNode);
//Ìí¼Ó“Title”ÔªËØ
CString titleValue ;
titleValue.Format(_T("%s%d"),m_strTitle,i);
pNode=pDoc->creat
Ïà¹ØÎĵµ£º
Dom4JÊÇÒ»¸ö¿ªÔ´µÄÓÅÐãµÄXML½âÎöAPI£¬ÏÖÔÚÔ½À´Ô½¶àµÄÏîÄ¿ÖпªÊ¼²ÉÓÃÕâÖÖ½âÎö·½Ê½£¬ÆäÖаüº¬ÁËÖøÃûµÄHibernate¡£ÕâÀïÎÒÃÇʹÓÃDom4J½âÎöÒ»¸ö´øÃüÃû¿Õ¼äµÄCXFµÄSpringÅäÖÃÎļþ¡£Ïȵ¼Èëdom4j-1.6.1.jar
spring ÅäÖÃÎļþ applicationContext-cxf.xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns=" ......
ÎÒÊÇʹÓõÄCMarkupÀà¶ÔXML½øÐвÙ×÷¡£
CMarkupºÃÏó¶¼ÊÇÏÈ´ÓÒ»¸öxmlÎļþÀïÃæ°ÑÄÚÈݶÁ³öÀ´£¬ÔÙ½øÐнâÎö£¬¸ãµÃÎÒºÞ²»µÃÒª°ÑÎÒµÄCStringдµ½xmlÎļþÀïÃæÔÙÈ¡³öÀ´ÁË¡£
  ......
Ò».ÕªÒª
.NetÔÊÐí¿ª·¢ÈËÔ±ÔÚÔ´´úÂëÖвåÈëXML×¢ÊÍ£¬ÕâÔÚ¶àÈËÐ×÷¿ª·¢µÄʱºòÏÔµÃÌØ±ðÓÐÓᣠC#½âÎöÆ÷¿ÉÒÔ°Ñ´úÂëÎļþÖеÄÕâЩXML±ê¼ÇÌáÈ¡³öÀ´£¬²¢×÷½øÒ»²½µÄ´¦ÀíΪÍⲿÎĵµ¡£ ÕâÆªÎÄÕ½«Õ¹Ê¾ÈçºÎʹÓÃÕâЩXML×¢ÊÍ¡£ ÔÚÏîÄ¿¿ª·¢ÖУ¬ºÜ¶àÈ˲¢²»ÀÖÒâд·±ÔÓµÄÎĵµ¡£µ«ÊÇ£¬¿ª·¢×鳤ϣÍû´úÂë×¢Ê;¡¿ÉÄÜÏêϸ£»ÏîÄ¿ ......
test.xml
<?xml version="1.0" encoding="utf-8" ?>
<root>
<R SecuCode="601600" Glossary="ѧITÍø²âÊÔ»ñÈ¡XML½á¹ûÏÔʾÕý³££¬¡£¡£¡£¡£¡£¡£¡£¹þ¹þ" />
<R SecuCode="600056" Glossary="²âÊÔµÚ¶þ¸ö£¬¡£¡£¡£¡£¡£¡£¡£¹þ¹þ" />
</root>
ÏÂÃæxml½âÎö ......
/*
* XMLTool.h ÅäÖÃÎļþ½âÎö¶¯Ì¬¿âÍ·Îļþ
* Ö÷ÒªÊä³öº¯Êý½Ó¿Ú·Ö±ðʵÏÖ¶ÔÅäÖÃÎļþµÄ¶ÁÈ¡ºÍдÈ룬Õë¶Ô½á¹û¼¯µÄ¸´ÖÆÇå¿Õ£¬ºÍÁ½¸ö×Ö·û´®´¦Àíº¯Êý
* ¶ÁÈ¡ÅäÖÃÎļþ½Ó¿Ú £ºint ReadXMLFile(XML_Node_Vector *XmlNodeVector, string filepath);
* дÈëÅäÖ ......