一个XML文档的内容能复制到另一个XML文档中去吗?

解决方案 »

  1.   

    可以使用:http://www.codeproject.com/KB/XML/JW_CXml.aspx用2个 CXml对象 分别打开2个xml文档。首先从一个文档中, 将你希望移动的结点从第一个文档中Detach, 然后 Attach到第2个文档中
      

  2.   

    其实这个很简单的 个人用CMarkup类就可以解决的
    代码如下:#include "Markup.h" //CMarkup类的头文件
    CMarkup openExistentXML;//打开的XML
    CMarkup saveCurrentXML; //保存的XML
    BOOL bLoadExistentXML = FALSE;//加载标志
    BOOL bFindMenuCreatCTD = FALSE;//找根节点标志
    BOOL savexml()
    {
        bLoadExistentXML = openExistentXML.Load("你的xml文档路径");//加载文档
        if (!bLoadExistentXML)
        {
            AfxMessageBox("所选xml文件未能成功加载!可能是文件结构不为标准的XML文件");
            return false;
        }
        openExistentXML.Save("新文档路径");//保存到新的xml文件
    }最后给你一个我收集的关于用VC解析CMarkup类的资源给你
    里面有CMarkup的.cpp和.h文件
    连接如下:
    http://download.csdn.net/source/992877
    下载后里面有很多我搜集的资料和实例
      

  3.   

    下面是修改后的#include "Markup.h"    //CMarkup类的头文件
    CMarkup openExistentXML;//打开的XML
    BOOL bLoadExistentXML = FALSE;//加载标志
    BOOL bSaveNewXML = FALSE;//保存成功标志 
    BOOL savexml()
    {
        bLoadExistentXML = openExistentXML.Load("你的xml文档路径");//加载文档
        if (!bLoadExistentXML)
        {
            //所选xml文件未能成功加载!可能是文件结构不为标准的XML文件         
            return FALSE;
        }
        bSaveNewXML = openExistentXML.Save("新文档路径");//保存到新的xml文件
        if(!bSaveNewXML )
        {
            //所选xml文件未能成功保存为新的XML文件 
            return FALSE;   
        }
        return TRUE;
    }