- ·上一篇文章:XML与HTML文件的区别
- ·下一篇文章:ASP操作xml--删除xml文件中某个节点
ASP操作xml--修改xml文件中的节点
<
!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"
 
 
&
#39
获取XML文件的路径这里根据你的虚拟目录不同而不同
 
 
Set 
objXML 
= 
Server.CreateObject("
Microsoft.FreeThreadedXMLDOM"
)
 
&
#39
以自由线程创建一个XML对像
 
objXML.load(strSourceFile)&
#39
把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"
 
 
&
#39
获取XML文件的路径这里根据你的虚拟目录不同而不同
 
 
Set 
objXML 
= 
Server.CreateObject("
Microsoft.XMLDOM"
)
 
 
&
#39
创建XML对像
 
 
objXML.load(strSourceFile)
 
 
&
#39
把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
 
 
&
#39
根据得到的数据建立XML片段
set 
objXML2=Server.CreateObject("
Microsoft.XMLDOM"
)
&
#39
建立一个新XML对像
objXML2.loadXML(XMLnode)
&
#39
把XML版片段读入内存中
set 
rootNewNode=objXML2.documentElement
&
#39
获得objXML2的根节点
objRootlist.ReplaceChild 
rootNewNode,rootOldNode
&
#39
修改test.xml
objXML.save(strSourceFile)
&
#39
存储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
!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"
 
 
&
#39
获取XML文件的路径这里根据你的虚拟目录不同而不同
 
 
Set 
objXML 
= 
Server.CreateObject("
Microsoft.FreeThreadedXMLDOM"
)
 
&
#39
以自由线程创建一个XML对像
 
objXML.load(strSourceFile)&
#39
把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"
 
 
&
#39
获取XML文件的路径这里根据你的虚拟目录不同而不同
 
 
Set 
objXML 
= 
Server.CreateObject("
Microsoft.XMLDOM"
)
 
 
&
#39
创建XML对像
 
 
objXML.load(strSourceFile)
 
 
&
#39
把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
 
 
&
#39
根据得到的数据建立XML片段
set 
objXML2=Server.CreateObject("
Microsoft.XMLDOM"
)
&
#39
建立一个新XML对像
objXML2.loadXML(XMLnode)
&
#39
把XML版片段读入内存中
set 
rootNewNode=objXML2.documentElement
&
#39
获得objXML2的根节点
objRootlist.ReplaceChild 
rootNewNode,rootOldNode
&
#39
修改test.xml
objXML.save(strSourceFile)
&
#39
存储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
ASP操作xml--修改xml文件中的节点