当前位置:asp编程网>技术教程>Xml教程>  正文

ASP操作xml--修改xml文件中的节点

2007-12-11 07:08:21   来源:本站原创    作者:佚名   浏览量:3233   收藏
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
  <TITLE> 修改xml内容 </TITLE>
  <META NAME="Generator" CONTENT="EditPlus">
  <META NAME="Author" CONTENT="">
  <META NAME="Keywords" CONTENT="">
  <META NAME="Description" CONTENT="">
 </HEAD>

 <BODY>
  <!--#include file="top.asp"-->
 <%
 id=request("id")
 if IsNumeric(id)=false or isNull(id) then
response.write ("参数不正确,请返回!")
response.end
end if 
addok=request("addok")
If addok="" Or IsNull(addok) then
   strSourceFile = Server.MapPath("./") &#38; "\test.xml"
  '获取XML文件的路径这里根据你的虚拟目录不同而不同
  Set objXML = Server.CreateObject("Microsoft.FreeThreadedXMLDOM")
 '以自由线程创建一个XML对像
 objXML.load(strSourceFile)'把XML文件读入内存
 Set objRootsite = objXML.documentElement.selectSingleNode("root")
 id=objRootsite.childNodes.item(id).childNodes.item(0).text
 site=objRootsite.childNodes.item(id).childNodes.item(1).text
 url=objRootsite.childNodes.item(id).childNodes.item(2).text
%>
  <form name="form1" method="post" action="?addok=edit&#38;id=<%=id%>">
  网站名:<input type="text" name="site" value="<%=site%>" size="30">

  网  址:<input type="text" name="url" value="<%=url%>" size="40">

  <input type="submit" value="修改"> <input type="reset" value="重置">
  </form>
<%
End If
If addok="edit" Then
  site=request("site")
  url=request("url")
  strSourceFile = Server.MapPath("./") &#38; "\test.xml"
  '获取XML文件的路径这里根据你的虚拟目录不同而不同
  Set objXML = Server.CreateObject("Microsoft.XMLDOM")
  '创建XML对像
  objXML.load(strSourceFile)
  '把XML文件读入内存中
  Set objRootlist = objXML.documentElement.selectSingleNode("root")
  set rootOldNode=objRootlist.childNodes.item(id) 
  brstr=chr(13)&#38;chr(10)&#38;chr(9)
  XMLnode=brstr&#38;"<list>"&#38;vbnewline &#38; _
     "<id>"&#38;id&#38;"</id>"&#38;vbnewline &#38; _
"<name>"&#38;site&#38;"</name>"&#38;vbnewline &#38; _
"<url>"&#38;url&#38;"</url>"&#38;vbnewline &#38; _
"<time>"&#38;Replace(Replace(Now(),"上午 ",""),"下午 ","")&#38;"</time>"&#38;vbnewline &#38; _
"</list>"&#38;vbnewline&#38;vbnewline
  '根据得到的数据建立XML片段
set objXML2=Server.CreateObject("Microsoft.XMLDOM")
'建立一个新XML对像
objXML2.loadXML(XMLnode)
'把XML版片段读入内存中
set rootNewNode=objXML2.documentElement
'获得objXML2的根节点
objRootlist.ReplaceChild rootNewNode,rootOldNode
'修改test.xml
objXML.save(strSourceFile)
'存储test.xml文件(因为不存储test.xml只在内存中更新了)
set objXML=nothing
set objXML2=nothing
Response.Redirect("index.asp")
response.end

End if
%>
 </BODY>
</HTML>

源码下载地址:http://www.aspprogram.cn/soft.asp?id=33

关于我们-广告合作-联系我们-积分规则-网站地图

Copyright(C)2013-2017版权所属asp编程网