首先看一下xml文件

text.xml
'encoding使用gb2312中文,如果要用英文则用utf-8

<?xml version="1.0" encoding="gb2312"?>
<root>
<row
ID="2" COMPNAME="闪电儿" ADDR="河北省唐山市" 邮编="063000" TEL="0315-2695"
PRODSERV="网页教学" 经济行业="网页制作" 省份="河北省" 地市="唐山市" 区域="路南区" visit="0"
优先级="888888888" zhuangtai="最新"/>
<row
ID="3" COMPNAME="网页教学qwwqq" ADDR="河北省唐山市aaa" 邮编="063000"
TEL="0315-2695" PRODSERV="网页教学" 经济行业="网页制作" 省份="河北省" 地市="唐山市" 区域="路南区"
visit="0" 优先级="888888888" zhuangtai="最新"/>
<row
ID="4" COMPNAME="sdfds" ADDR="sdfds" 邮编="sdfds" TEL="sdfds"
PRODSERV="sdfds" 经济行业="sdfds" 省份="sdfds" 地市="sdfds" 区域="sdfds"
visit="sdfds" 优先级="sdfds" zhuangtai="sdfds"/>
<row
ID="5" COMPNAME="asd" ADDR="asd" 邮编="asd" TEL="asd" PRODSERV="asd"
经济行业="asd" 省份="asd" 地市="asd" 区域="asd" visit="asd" 优先级="asd"
zhuangtai="asd"/>
<row
ID="6" COMPNAME="m" ADDR="m" 邮编="m" TEL="m" PRODSERV="m" 经济行业="m"
省份="m" 地市="m" 区域="m" visit="m" 优先级="m" zhuangtai="m"/>
</root>
读取xml文件,如图
index.asp
<%
path="text.xml"
dim xml,objNode,objAtr,nCntChd,nCntAtr
Set xml=Server.CreateObject("Microsoft.XMLDOM")
xml.validateOnParse = True
xml.Load(Server.MapPath(path))
xml.Async=False
Set objNode=xml.documentElement
nCntChd=objNode.childnodes.length-1
'这个可以定义asp读取xml文件的那一个值,通过传递这个值来确定读取的数据
%>
<table width="90%" border="0" cellspacing="0" cellpadding="0">
  <tr>
  <%
    for h=0 to nCntChd
  %>
    <td height="25" align="center">名称</td>
  <%
    next
  %>
    <td height="25"><a href="addxmlInfo.asp">添加</a> </td>
  </tr>
<%
for i=0 to nCntChd
set objAtr=objNode.ChildNodes.item(i)
nCntAtr=objAtr.Attributes.length-1
'历遍一条记录里面的所有的记录项,记录是从0开始的
%>
<tr>
<%
for j=0 to nCntAtr
%>
   <td height="25" align="center" valign="middle"><%=objAtr.Attributes.item(j).Text%></td>
  
<%
'response.write objAtr.Attributes.item(j).Text&"<br>"
next
%>
<td
height="25" align="center" valign="middle"><a
href="modXml.asp?id=<%=i%>">修改</a> <a
href="delXml.asp?id=<%=i%>">删除</a></td>
</tr>
<%
next
%>
</table>
<%
Set objAtr=Nothing
Set objNode=Nothing 
Set xml=Nothing 
%>
添加xml文件内容
addxmlInfo.asp
<%
  dim xml,objNode,objAtr,nCntChd,nCntAtr
  Set xml=Server.CreateObject("Microsoft.XMLDOM")
xml.validateOnParse = True
xml.Load(Server.MapPath("text.xml"))
xml.Async=False
Set objNode=xml.documentElement
nCntChd=objNode.childnodes.length-1
set objAtr=objNode.ChildNodes.item(nCntChd)
nCntAtr=objAtr.Attributes.length-1
%>
<form action="addxml.asp" method="post">
<table width="43%" border="0" cellspacing="0" cellpadding="0">
<%
   for n=0 to nCntAtr
%>
  <tr>
    <td><%=objAtr.Attributes.item(n).Name%></td>
<%
 if objAtr.Attributes.item(n).Name="ID" then
%>
  
 <td align="left"><input type="text"
name="<%=objAtr.Attributes.item(n).Name%>"
value="<%=cint(objAtr.Attributes.item(n).Text)+1%>"
/></td>
<%
else
%>
<td align="left"><input type="text" name="<%=objAtr.Attributes.item(n).Name%>" value="" /></td>
<%
end if
%>
  </tr>
<%
next
%>
<tr>
<td><input type="submit" value="添加" /></td>
</tr>
</table>
</form>
<%
Set objAtr=Nothing
Set objNode=Nothing 
Set xml=Nothing 
%>
addxml.asp
<%
   dim xml,objNode,objAtr,nCntChd,nCntAtr
   Set xml=Server.CreateObject("Microsoft.XMLDOM")
   xml.validateOnParse = True
   xml.Load(Server.MapPath("text.xml"))
   xml.Async=False
   Set objNode=xml.documentElement
   set row = xml.createNode(1,"row","")
   objNode.appendChild(row)
   xml.Save(Server.MapPath("text.xml"))
   '最后一个ID号
   nCntChd=objNode.childnodes.length-1
 
   set objAtr=objNode.ChildNodes.item(nCntChd-1)
   nCntAtr=objAtr.Attributes.length-1
   for n=0 to nCntAtr
  
call

xml.getElementsByTagName("row").item(xml.DocumentElement.childNodes.length-1).setAttribute(""&objAtr.Attributes.item(n).Name&"",""&trim(request.Form(objAtr.Attributes.item(n).Name))&"")

   next
xml.Save(Server.MapPath("text.xml"))
set objAtr=nothing
set row=nothing
set objNode=nothing
set xml=nothing
response.Write "<script>alert('添加成功!');location.href='readXml.asp';</script>"
 
%>

至此添加完毕,接下来要进行修改和删除了

修改xml文件
modXml.asp
<%
  dim id
  id=request("id")
  if id<>"" then
  dim xml,objNode,objAtr,nCntChd,nCntAtr
  Set xml=Server.CreateObject("Microsoft.XMLDOM")
xml.validateOnParse = True
xml.Load(Server.MapPath("text.xml"))
xml.Async=False
Set objNode=xml.documentElement
 
set objAtr=objNode.ChildNodes.item(id)
nCntAtr=objAtr.Attributes.length-1
%>
<form action="modXmlInfo.asp" method="post">
<table width="43%" border="0" cellspacing="0" cellpadding="0">
<%
   for n=0 to nCntAtr
%>
  <tr>
    <td><%=objAtr.Attributes.item(n).Name%></td>
  
 <td align="left"><input type="text" name="Atr<%=n%>"
value="<%=objAtr.Attributes.item(n).Text%>" /></td>
  </tr>
<%
next
%>
<tr>
<td><input type="submit" value="修改" />
 <input name="id" type="hidden" id="id"  value="<%=id%>"/></td>
</tr>
</table>
</form>
<%
  end if
%>
<%
Set objAtr=Nothing
Set objNode=Nothing 
Set xml=Nothing 
%>
modXmlInfo.asp
<%
dim id
id=request("id")
if id<>"" then
dim xml,objNode,objAtr,nCntChd,nCntAtr
   Set xml=Server.CreateObject("Microsoft.XMLDOM")
xml.validateOnParse = True
xml.Load(Server.MapPath("text.xml"))
xml.Async=False
Set objNode=xml.documentElement
set objAtr=objNode.ChildNodes.item(id)
nCntAtr=objAtr.Attributes.length-1
for c=0 to nCntAtr
objAtr.Attributes.item(c).Text=request.Form("Atr"&c)
'response.Write request.Form("Atr"&c)
'response.Write "<>"
next
xml.save(Server.mappath("text.xml"))
 
end if
set objAtr=nothing
set objNode=nothing
set xml=nothing
response.Write "<script>alert('保存成功');location.href='readxml.asp'</script>"
%>
修改完毕,接下来只剩下删除了
delXml.asp
<%
  dim id
id=request("id")
if id<>"" then
dim xml,objNode,objAtr,nCntChd,nCntAtr
   Set xml=Server.CreateObject("Microsoft.XMLDOM")
xml.validateOnParse = True
xml.Load(Server.MapPath("text.xml"))
xml.Async=False
Set objNode=xml.documentElement
objNode.removechild(objNode.ChildNodes.item(id))
xml.save(Server.mappath("text.xml"))
 
end if
set objAtr=nothing
set objNode=nothing
set xml=nothing
response.Write "<script>alert('保存成功');location.href='readxml.asp'</script>"
%>

ASP对XML的增、删、改、查的更多相关文章

  1. 好用的SQL TVP~~独家赠送[增-删-改-查]的例子

    以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQL性能优化.  本系列主要是针对T-SQL的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础] ...

  2. iOS FMDB的使用(增,删,改,查,sqlite存取图片)

    iOS FMDB的使用(增,删,改,查,sqlite存取图片) 在上一篇博客我对sqlite的基本使用进行了详细介绍... 但是在实际开发中原生使用的频率是很少的... 这篇博客我将会较全面的介绍FM ...

  3. iOS sqlite3 的基本使用(增 删 改 查)

    iOS sqlite3 的基本使用(增 删 改 查) 这篇博客不会讲述太多sql语言,目的重在实现sqlite3的一些基本操作. 例:增 删 改 查 如果想了解更多的sql语言可以利用强大的互联网. ...

  4. django ajax增 删 改 查

    具于django ajax实现增 删 改 查功能 代码示例: 代码: urls.py from django.conf.urls import url from django.contrib impo ...

  5. ADO.NET 增 删 改 查

    ADO.NET:(数据访问技术)就是将C#和MSSQL连接起来的一个纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中 也可以将数据库中的数据提取到内存中供程序调用 ADO.NET所有数据访 ...

  6. MVC EF 增 删 改 查

    using System;using System.Collections.Generic;using System.Linq;using System.Web;//using System.Data ...

  7. python基础中的四大天王-增-删-改-查

    列表-list-[] 输入内存储存容器 发生改变通常直接变化,让我们看看下面列子 增---默认在最后添加 #append()--括号中可以是数字,可以是字符串,可以是元祖,可以是集合,可以是字典 #l ...

  8. Android SQLite(1)简单示例-增,删,改,查

    1.主要核心类,Sqlite编程要继承SQLiteOpenHelper import android.content.Context; import android.database.sqlite.S ...

  9. 简单的php数据库操作类代码(增,删,改,查)

    这几天准备重新学习,梳理一下知识体系,同时按照功能模块划分做一些东西.所以.mysql的操作成为第一个要点.我写了一个简单的mysql操作类,实现数据的简单的增删改查功能. 数据库操纵基本流程为: 1 ...

  10. MongoDB增 删 改 查

    增 增加单篇文档 > db.stu.insert({sn:'001', name:'lisi'}) WriteResult({ "nInserted" : 1 }) > ...

随机推荐

  1. Android EditText悬浮在输入法之上

    Android EditText悬浮在输入法之上 使用 android:windowSoftInputMode="adjustResize" 会让界面整体被顶上去,很多时候我们不需 ...

  2. sublime3 插件

    Sublime Text 3能用支持的插件推荐 从二月份用测试版本build 3012开始用sublime text 3,虽然很多插件在sublime text 3不工作了,因为sublime tex ...

  3. 删除数据表中除id外其他字段相同的冗余信息

    删除一个信息表中除id外其他字段都相同的冗余信息,如下 id name addr 1 a b 2 a b 3 b c 删除这个表中的冗余信息 即应该是 id name addr 1 a b 3 b c ...

  4. X509 证书生成

    X509证书介绍X.509 是由国际电信联盟(ITU-T)制定的数字证书标准,相信这是人尽皆知的了,目前X.509证书据我所知有三个版本,.net中使用的是x.509-2,X.509-2 版引入了主体 ...

  5. KnockoutJS 3.X API 第七章 其他技术(7) 微任务

    注意:本文档适用于Knockout 3.4.0及更高版本. Knockout的微任务队列 Knockout的微任务队列支持调度任务尽可能快地运行,同时仍然是异步的,努力安排它们在发生I / O,回流或 ...

  6. Android开发-之第一个程序:HelloWorld!

    小编觉得不管学习什么编程的时候,第一个程序都是要求打印输出一个"HelloWorld!",那就从最简单的HelloWorld开始吧!哈哈~~~~ 一.创建一个Android工程 1 ...

  7. Restore Volume 操作 - 每天5分钟玩转 OpenStack(60)

    前面我们 backup 了 voluem,今天我们将讨论如何 restore volume. restore 的过程其实很简单,两步走: 在存储节点上创建一个空白 volume. 将 backup 的 ...

  8. 5分钟用Spring4 搭建一个REST WebService

    前置技能 ① 使用maven来管理java项目 这个技能必须点一级,以便快速配置项目. 本文实际上是我学习Spring的过程中搬的官网上的demo,使用maven配置项目. ② jdk 1.8+   ...

  9. 6-tips-for-managing-property-files-with-spring--转

    原文地址:http://www.summa.com/blog/2009/04/20/6-tips-for-managing-property-files-with-spring What could ...

  10. C# PPT 为形状设置三维效果

    在PPT中,形状是非常重要的元素.3-D形状,立体多元,给人耳目一新的感觉.在幻灯片中添加3-D效果形状,必然会为PPT的整体效果增色不少.为形状设置三维格式时,可设置棱台,轮廓线,表面效果等. 本篇 ...