首先看一下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. CI Weekly #3 | 关于微服务、Docker 实践与 DevOps 指南

    CI Weekly 围绕『 软件工程效率提升』 进行一系列技术内容分享,包括国内外持续集成.持续交付,持续部署.自动化测试. DevOps 等实践教程.工具与资源,以及一些工程师文化相关的程序员 Ti ...

  2. Uiautomator 2.0之UiWatcher类学习小记

    1. 主要功能 使用此方法可以处理中断问题,从而保证测试用例的正常运行. 2. 相关API API 说明 registerWatcher (String name, UiWatcher watcher ...

  3. C++构造函数和析构函数

    构造函数简介 在上一个章节我们在创建好类的对象之后,首先对它的每一个成员属性赋值之后再对它们进行输出操作,如果不赋值就输出,这些值就会是垃圾值.而为了代码的简介,一次性为所有成员属性初始化,C++的类 ...

  4. HTML的页面IE注释

    我们常常会在网页的HTML里面看到形如[if lte IE 9]……[endif]的代码,表示的是限定某些浏览器版本才能执行的语句,那么这些判断语句的规则是什么呢?请看下文: <!--[if ! ...

  5. 当GitHub把我当成DDos攻击者拉进了黑名单中。。。

    Github黑名单自救+快速稳定FQ 异常处理汇总-开发工具  http://www.cnblogs.com/dunitian/p/4522988.html 原因:项目冲突,没有先更新后提交,他自行更 ...

  6. 视图必须派生自 WebViewPage 或 WebViewPage<TModel>

    后端汇总:http://www.cnblogs.com/dunitian/p/4523006.html#efmvc 后来发现原来吧web.config给删了 这就简单了,复制其他项目的web.conf ...

  7. css3使用技巧:细线边框的3种不同的写法

    一般的app边框描边的线都小于一像素,那么我就像往常一样直接描了1px的边框,虽然是1px可是结果和app里的描边完全不一样“粗了”,所以就在网找了一下看看有没有解决方法,可是找了一会没找到,那咋办, ...

  8. 深入学习jQuery元素尺寸和位置操作

    × 目录 [1]尺寸设置 [2]位置设置 前面的话 对于javascript来说,元素尺寸有scroll.offset.client三大属性,以及一个强大的getBoundingClientRect( ...

  9. jquery ajax(实现单独提交某个form)

    function submitTaskScore(formid) {//formid表示的是表单的id $.ajax({ type:"post", url:"compan ...

  10. T-SQL:毕业生出门需知系列(二)

    第2课 检索数据 2.1 SELECT 语句 用途:从一个或多个表中检索数据信息 关键字:作为SQL组成部分的保留字.关键字不能用作表或列的名字. 为了使用SELECT检索表数据,必须至少给出两条信息 ...