如题

解决方案 »

  1.   

    看看xml的格式帮助吧。
    XML可以用记事本打开的。试试行不行。
      

  2.   

    xml parse sdk装个这个,再看看帮助就可以了。
    其实用vc.net就很方便了,有现成的类可以用。
    祝好运!
      

  3.   

    bool CPCTreeView::LoadTreeInfo(LPCTSTR lpszFile, HTREEITEM hParent)
    {
    HRESULT hr;
    IXMLDOMDocument2 * pXMLDoc = NULL; // 创建XMLDOMDocument实例
    if (FAILED(CoCreateInstance(CLSID_DOMDocument, NULL, CLSCTX_INPROC_SERVER, 
    __uuidof(IXMLDOMDocument2), (void**)&pXMLDoc)))
    return false;
    // 禁止异步处理
    hr = pXMLDoc->put_async(FALSE);
    if (FAILED(hr))
    {
    pXMLDoc->Release();
    return false;
    }
    // 将XML文本载入文档
    VARIANT v;
    v.vt = VT_BSTR;
    v.bstrVal = SysAllocString(CT2W(lpszFile));
    if (pXMLDoc->load(v) == VARIANT_FALSE)
    {
    pXMLDoc->Release();
    return false;
    }
    // 将根结点下的内容加到树中
    if (pXMLDoc->documentElement)
    {
    MSXML2::IXMLDOMNodePtr pChildNode = pXMLDoc->documentElement->GetfirstChild();
    while(pChildNode)
    {
    AddXMLDOMDocToBranch(hParent, pXMLDoc, pChildNode);
    pChildNode = pChildNode->GetnextSibling();
    }
    }
    return true;
    }bool CPCTreeView::SaveTreeInfo(LPCTSTR lpszFile, HTREEITEM hParent)
    {
    HRESULT hr;
    IXMLDOMDocument2 * pXMLDoc = NULL; // 创建XMLDOMDocument实例
    if (FAILED(CoCreateInstance(CLSID_DOMDocument, NULL, CLSCTX_INPROC_SERVER, 
    __uuidof(IXMLDOMDocument2), (void**)&pXMLDoc)))
    return false;
    // 禁止异步处理
    if (FAILED(pXMLDoc->put_async(FALSE)))
    {
    pXMLDoc->Release();
    return false;
    }
    // 添加XML处理指令,以将最终XML标志为合法的XML文档
    #ifndef _UNICODE
    MSXML2::IXMLDOMProcessingInstructionPtr pPI = pXMLDoc->createProcessingInstruction(SysAllocString(L"xml"), // target
      SysAllocString(L"version=\"1.0\" encoding=\"UTF-8\"") //Data
    );
    #else
    MSXML2::IXMLDOMProcessingInstructionPtr pPI = pXMLDoc->createProcessingInstruction(SysAllocString(L"xml"), // target
     SysAllocString(L"version=\"1.0\" encoding=\"UTF-16\"") //Data
    );
    #endif
    if (pPI == NULL)
    {
    pXMLDoc->Release();
    return false;
    }
    MSXML2::IXMLDOMNodePtr pOutNode = pXMLDoc->appendChild((MSXML2::IXMLDOMNode *)pPI);
    if (pOutNode == NULL)
    {
    pXMLDoc->Release();
    return false;
    }
    // 获取根结点
    AddBranchToXMLDOMDocument(hParent, pXMLDoc, pXMLDoc);
    VARIANT v;
    v.vt = VT_BSTR;
    v.bstrVal = SysAllocString(CT2W(lpszFile));
    hr = pXMLDoc->save(v);
    pXMLDoc->Release();
    return true;
    }
      

  4.   

    可以用dom,看xmlsdk的帮助,上面有完整的例子