使用VC6.0访问XML文件!

原创 2006年06月07日 21:34:00

新建了一个类,所有的访问代码都包含在MyTest类中了!

(四年以前使用过VC,这是四年以后第一个VC程序)

//=========================================================================

头文件:MyTest.h的代码如下  

//导入操作DOM的COM
#import <msxml.dll> named_guids
using namespace MSXML;
//....................................................
class MyTest {
         public:
                   MyTest();
                   virtual ~MyTest();
                   void testme();
                   //定义操作DOM对象的指针
                  IXMLDOMDocumentPtr m_plDomDocument;
                  IXMLDOMElementPtr m_pDocRoot;
                  void DisplayChild(IXMLDOMNodePtr pChild);
                  void DisplayChildren(IXMLDOMNodePtr pParent);
};

//============================================================================

实现文件:MyTest.cpp

MyTest::MyTest(){
                   //可能是开始使用COM
                   ::AfxOleInit();
                   ::CoInitialize(NULL);
                   HRESULT hr = m_plDomDocument.CreateInstance(CLSID_DOMDocument);
                   if (FAILED(hr)){
                       _com_error er(hr);
                      AfxMessageBox(er.ErrorMessage());
                     //EndDialog(1);
                  }
}

MyTest::~MyTest(){

}
void MyTest::testme(){
                   //开始操作XML文档了
                   CString strFileName ("my.xml");
                   // convert xml file name string to something COM can handle (BSTR)
                   _bstr_t bstrFileName;
                  bstrFileName = strFileName.AllocSysString();

                   // call the IXMLDOMDocumentPtr's load function to load the XML document
                  variant_t vResult;
                  vResult = m_plDomDocument->load(bstrFileName);
                 if (((bool)vResult) == TRUE) {// success!
                     // now that the document is loaded, we need to initialize the root pointer
                     m_pDocRoot = m_plDomDocument->documentElement;
                    AfxMessageBox("Document loaded successfully!");
                 }else{
                 AfxMessageBox("Document FAILED to load!");
                  }
                AfxMessageBox(m_plDomDocument->xml);
}

void MyTest::DisplayChildren(IXMLDOMNodePtr pParent){
                    // display the current node's name
                   DisplayChild(pParent);

                   // simple for loop to get all children
                   for (IXMLDOMNodePtr pChild = pParent->firstChild;
                        NULL != pChild;
                        pChild = pChild->nextSibling){
                    // for each child, call this function so that we get
                    // its children as well
                    DisplayChildren(pChild);
 }
}

void MyTest::DisplayChild(IXMLDOMNodePtr pChild){
 //if (class="codeHighlight">NODE_TEXT == pChild->nodeType)
 //{
  //AfxMessageBox(pChild->text);
 //}
 //else
 //{
  //AfxMessageBox(pChild->nodeName);
 //}

}

//=================================================================================

关于如何使用vc6.0读取xml文件中的内容

一,建立一个基于对话框的程序,工程名为xml;  二, 初始化OLE.  BOOL CXmlApp::InitInstance()  {  AfxOleInit();  …….  }  ...

vc6.0读取xml文件中的内容

一,建立一个基于对话框的程序,工程名为xml; 二, 初始化OLE. BOOL CXmlApp::InitInstance() { AfxOleInit(); ……. } ...

VC.net 使用XML文件读写图像

  • 2010年08月18日 15:21
  • 13KB
  • 下载

VC轻松解析XML文件 - CMarkup类的使用方法

VC轻松解析XML文件 - CMarkup类的使用方法 VC解析XML文件的工具有很多,CMarkup, tinyXML,还有IBM的,MS的等等。 据说tinyXML很好,可能字符集问题,我编译...
  • erick08
  • erick08
  • 2013年02月24日 10:11
  • 3433

VC轻松解析XML文件 - CMarkup类的使用方法

VC轻松解析XML文件 - CMarkup类的使用方法 VC解析XML文件的工具有很多,CMarkup, tinyXML,还有IBM的,MS的等等。 据说tinyXML很好,可能字符集问题,我编译...

VC使用tinyxml 遍历xml文件

#include "tinystr.h" #include "tinyxml.h" #ifdef _DEBUG #pragma comment(lib,"tinyxmld.lib")...

VC 使用msxml6.dll动态链接库中的函数读写XML文件

VC 使用msxml6.dll动态链接库中的函数读写XML文件

VC中使用CMarkup解析xml文件

(一) 先讲一下XML中的物殊字符,手动填写时注意一下。字符                   字符实体&                       &或&#38;'       ...
  • yipast
  • yipast
  • 2011年04月28日 15:49
  • 342

VC xml文件解析类

  • 2015年12月09日 11:59
  • 38KB
  • 下载

VC读写XML文件

  • 2014年03月11日 12:40
  • 119KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用VC6.0访问XML文件!
举报原因:
原因补充:

(最多只允许输入30个字)