ÔõôÄܰÑÊý¾Ý¿âµÄxmlÀàÐ͵¼³öµ½Îļþ£¿
Êý¾Ý¿âijÕűí¼ÙÉèÖ»ÓÐ2ÁУ¬Ò»ÁÐÊÇÖ÷¼ü£¬ÁíÒ»ÁÐÊý¾ÝÀàÐÍΪxml¡£
ÓÃCRecordsetÅÉÉúÒ»¸öÀà¶ÔÓ¦ÕâÕűíµÄ»°£¬±íÖÐxmlÀàÐÍÓ¦¸Ã¶ÔÓ¦vcÖÐʲôÊý¾ÝÀàÐÍÄØ£¿
ÓÃCStringµÄ»°Ã²ËƵ½Ò»¶¨³¤¶ÈºóÃæ¾Í¶Á²»³öÀ´ÁË¡£ÔõôÄܰÑÕâ¸öxmlÊý¾ÝÀàÐÍÀïµÄÄÚÈݵ¼³öµ½Ò»¸öxmlÎļþÀïÄØ£¿
ÎÒдµÄÒ»¶Î´úÂ룺
C/C++ code:
CString strSQL;
CProductStyle recordsetps(pTstDB); //pTstDBÀàÐÍΪCDatabase *£¬ÇÒÊý¾Ý¿âÒѳɹ¦´ò¿ª
strSQL.Format( _T("select * from [ProductStyle] where ID=%d"), 2 );
recordsetps.Open( CRecordset::snapshot, strSQL, CRecordset::readOnly );
CStdioFile file;
file.Open( _T("C:\\abc.xml"), CFile::modeCreate|CFile::modeWrite );
file.WriteString( recordsetps.m_strXML );
file.Close();
// CProductStyleÀàµÄÉùÃ÷£¬±íProductStyleÖÐÖ»ÓÐÁ½ÁÐIDºÍXML
class CProductStyle : public CRecordset
{
public:
CProductStyle(CDatabase* pDatabase = NULL);
DECLARE_DYNAMIC(CProductStyle)
long m_lID; // ¶ÔÓ¦Ö÷¼ü
CString m_strXML; // ¶ÔÓ¦XMLÁÐ
public:
virtual CString GetDefaultConnect();
virtual CString GetDefaultSQL();
virtual void DoFieldExchange(CFieldExchange* pFX);
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
};
ÔÚXMLÁÐÖÐÊý¾ÝºÜ³¤µÄʱºòÔÚÉÏÃæµÚËÄÐÐopenÖ®ºóCStringÖ»ÓÐÇ°ÃæÒ»¶Î×Ö·û´®£¬ºóÃæ¶¼Ã»ÁË¡£ÔÙ³¤Ò
Ïà¹ØÎÊ´ð£º
DataSetµ¼³öxml Åú´¦Àí(Ñ»·)µÃÔõô´¦Àí
XMLÎļþ
<A>
<B>
<C>
</C>
&nb ......
<?xml version="1.0" encoding="UTF-8" ?>
<root>
<video>
<device deviceid="\\?\usb#vid_0c45&pid_613b#5&2d0620de& ......
ÔÚactionÖÐÖÁÉÙÓÐ4¸ö·½·¨£¬Ã¿¸ö·½·¨½ÓÊÜÒ»ÖÖÇëÇó£¬ÀýÈçËĸö·½·¨×î¼òµ¥µÄ¾ÍÊÇÔöɾ¸Ä²é£¬Ã¿Ò»ÖÖ²Ù×÷£¬ÐèҪУÑéµÄactionÊôÐÔÊDz»Í¬µÄ£¬Ð£ÑéÊôÐԵĹæÔòÒ²ÊDz»Í¬µÄ£¬ÔõôÑù²ÅÄÜʹÓÃxmlµÄÊäÈëУÑ飿
Èç¹ûÊÇʹÓÃactionName ......
xml := CreateOleObject('Microsoft.XMLHTTP');
xml.Open('GET','http://www.google.com', False);
xml.Send;
xml.responseText;
ʹÓÃxml.responseText¿ÉÒÔ»ñÈ¡ÍøÒ³Ô´Âë,µ«ÊÇÔÙ´Î ......