XML怎么写

XML怎么写,第1张

xml没有你说的作用,xml就是普通的纯文本,xml能起的作用只有传输数据,而不能处理数据,处理xml的结果由处理它的程序来决定

<?xml version="1.0" encoding="utf-8"?>

<note>

<from>kevin</from>

<to>john</to>

<body>go to the park at 9.00</body>

</note>

xml可以用记事本编辑,保存格式为.xml

xml必须以<?xml version="1.0" encoding="utf-8"?>开头,encoding部分随意

xml必须有一个以上标签销绝歼,即根标签,本例是<note>

xml标签格式与html相同,但更严格。xml所有标签都必须闭合。

xml标签可以有属性。

一个标签称为一个元素节点,标签中的文本称为文本节点,属性称为属性节点。

所有标签都有一个相同的父元素,即根标签。

元素可以有子元素,如本例中,note元素的子元素为from,to,body,元素可以有任意个子元素,0个也行。

开始标签和闭合标签必须完全一致,否亏冲则导致错误,如<body></Body>将导致错误,必须是<body></body>。

标签可以是宏配任意名称。

xml在网页中用ajax处理

记住这些,就可以写xml了。

用VC吧,下面有一个例子,你参照下:

void CreateXml()

{

    CoInitialize(NULL)

    // 创建文档

    MSXML2::IXMLDOMDocument2Ptr pXMLDoc = NULL

    //创建DOMDocument对象

    HRESULT hr = pXMLDoc.CreateInstance(__uuidof(MSXML2::DOMDocument))

  敬握  if (!SUCCEEDED(hr))

    {

        return

    }

    // Create the Processing Instruction

    MSXML2::IXMLDOMProcessingInstructionPtr pXMLProc = NULL

    pXMLProc = pXMLDoc->createProcessingInstruction("xml", "version='1.0' encoding='UTF-8'")

    

    _variant_t vNullVal

    vNullVal.vt = VT_NULL

    pXMLDoc->insertBefore(pXMLProc, vNullVal)

    // 创建根结点

    _variant_t varNodeType((short)MSXML2::NODE_ELEMENT)

    MSXML2::IXMLDOMNodePtr pXMLNodeRoot= NULL 

    pXMLNodeRoot = pXMLDoc->createNode(varNodeType, _T("Cases"), _T(""))

    // 添加根结点

    pXMLDoc->appendChild(pXMLNodeRoot)

    // 创建并添加下级结点

    MSXML2::IXMLDOMNodePtr pXMLNodeNode= NULL 

    pXMLNodeNode = pXMLNodeRoot->appendChild(pXMLDoc->createElement(_T("Case")))

    // 创建下级元素结点

    MSXML2::IXMLDOMElementPtr pXMLEle = NULL

    pXMLEle = pXMLDoc->createElement(_T("CopyFile"))

    // 创建并设置下级结点属性

    MSXML2::IXMLDOMAttributePtr pXMLAttr = NULL

    pXMLAttr = pXMLDoc->createAttribute(_T("src"旅稿裂))

    pXMLAttr->nodeTypedValue = "C:\\test.txt"

    pXMLEle->attributes->setNamedItem(pXMLAttr)

    pXMLAttr = pXMLDoc->createAttribute(_T("dest"))

    pXMLAttr->nodeTypedValue = "D:\\Test.txt"

    pXMLEle->attributes->setNamedItem(pXMLAttr)

    // 添加元素结点

   拆闭 pXMLNodeNode->appendChild( pXMLEle)

    MSXML2::IXMLDOMElementPtr pXMLEle1 = NULL

    pXMLEle1 = pXMLDoc->createElement(_T("DelFile"))

    pXMLEle1->appendChild(pXMLDoc->createTextNode("C:\\test.txt"))

    // 添加元素结点

    pXMLNodeNode->appendChild( pXMLEle1)

  

    // 保存文档

    pXMLDoc->save(_T("d:\\Test.xml"))

}

 

效果如下:

<?xml version="1.0" encoding="UTF-8" ?> 

<Cases>

    <Case>

        <CopyFile src="C:\test.txt" dest="D:\Test.txt" /> 

        <DelFile>C:\test.txt</DelFile> 

    </Case>

</Cases>

为了能够让MFC认识MSXML2,我们需要引入相应的dll,代码如下

#import "msxml4.dll"


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12224603.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-22
下一篇 2023-05-22

发表评论

登录后才能评论

评论列表(0条)

保存