<script language="vbscript" runat="server"> 
''============================================================ 
''作者:做回自己 
''时间:2005-3-15 
============================================================ 
Class XMLClass 
Private objXml 
Private xmlDoc 
Private xmlPath 
''//============================================================ 
''<!--类初始化及注销时的事件--> 
Sub Class_initialize 
Set objXml = Server.CreateObject("MSXML2.DOMDocument") 
objXml.preserveWhiteSpace = true 
objXml.async = false 
End Sub 
Sub Class_Terminate 
Set objXml = Nothing 
End Sub 
''//============================================================ 
''<!--建立一个新的XML文档--> 
Public Function CreateNew(sName) 
Set tmpNode = objXml.createElement(sName) 
objXml.appendChild(tmpNode) 
Set CreateNew = tmpNode 
End Function 
''<!--从外部读入XML文档--> 
Public Function OpenXml(sPath) 
OpenXml=False 
sPath=Server.MapPath(sPath) 
''Response.Write(sPath) 
xmlPath = sPath 
If objXml.load(sPath) Then 
Set xmlDoc = objXml.documentElement 
OpenXml=True 
End If 
End Function 
''<!--从外部读入XML字符串--> 
Public Sub LoadXml(sStr) 
objXml.loadXML(sStr) 
Set xmlDoc = objXml.documentElement 
End Sub 
Public Sub InceptXml(xObj) 
Set objXml = xObj 
Set xmlDoc = xObj.documentElement 
End Sub 
''//============================================================ 
''<!--新增一个节点--> 
Public Function AddNode(sNode,rNode) 
'' sNode STRING 节点名称 
'' rNode OBJECT 增加节点的上级节点引用 
''============================================================= 
Dim TmpNode 
Set TmpNode = objXml.createElement(sNode) 
rNode.appendChild TmpNode 
Set AddNode = TmpNode 
End Function 
''<!--新增一个属性--> 
Public Function AddAttribute(sName,sValue,oNode) 
'' sName STRING 属性名称 
'' sValue STRING 属性值 
''1.0"&chr(34)&" encoding="&chr(34)&"gb2312"&chr(34)) 
''//--把xml生命追加到xml文档 
objXML.insertBefore objPi, objXML.childNodes(0) 
End Function 
''//============================================================================= 
''<!--保存XML文档--> 
Public Function SaveXML() 
''ProcessingInstruction() 
objXml.save(xmlPath) 
End Function 
''<!--另存XML文档--> 
Public Function SaveAsXML(sPath) 
ProcessingInstruction() 
objXml.save(sPath) 
End Function 
''//================================================================================== 
''相关统计 
''<!--取得根节点--> 
Property Get Root 
Set Root = xmlDoc 
End Property 
''<!--取得根节点下子节点数--> 
Property Get Length 
Length = xmlDoc.childNodes.length 
End Property 
''//================================================================================== 
''相关测试 
Property Get TestNode 
TestNode = xmlDoc.childNodes(0).text 
End Property 
End Class 
</script> 
									 
 
                      11
                      22
                      33