首先看一下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. PHP的性能演进(从PHP5.0到PHP7.1的性能全评测)

    本文是最初是来自国外的这篇:PHP Performance Evolution 2016, 感谢高可用架构公众号翻译成了中文版, 此处是转载的高可用架构翻译后的文章从PHP 5到PHP 7性能全评测( ...

  2. 看看国外的javascript题目,你能全部做对吗?

    叶小钗 的博客最近都在讨论面试题目 正好以前也看过一篇,就借花献佛拿出来分享一下 http://perfectionkills.com/javascript-quiz/ 附带了自己的理解,答案有争议的 ...

  3. lua解析脚本过程中的关键数据结构介绍

    在这一篇文章中我先来介绍一下lua解析一个脚本文件时要用到的一些关键的数据结构,为将来的一系列代码分析打下一个良好的基础.在整个过程中,比较重要的几个源码文件分别是:llex.h,lparse.h.l ...

  4. php继承多态

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. Mac OS apache php配置

    1.进入Apache配置文件sudo vi /etc/apache2/httpd.conf    找到#LoadModule php5_module libexec/apache2/libphp5.s ...

  6. Java内存模型深度解析:volatile--转

    原文地址:http://www.codeceo.com/article/java-memory-4.html Volatile的特性 当我们声明共享变量为volatile后,对这个变量的读/写将会很特 ...

  7. C语言版flappy bird黑白框游戏

    在此记录下本人在大一暑假,2014.6~8这段时间复习C语言,随手编的一个模仿之前很火热的小游戏----flappy bird.代码bug基本被我找光了,如果有哪位兄弟找到其他的就帮我留言下吧,谢谢了 ...

  8. ar命令详解

    ar 命令 用途 维护链接编辑器使用的索引库. 语法 ar [  -c ] [  -l ] [  -g | -o ] [  -s ] [  -v ] [  -C ] [  -T ] [  -z ] { ...

  9. 重温JSP学习笔记--JSP动作标签

    上一篇笔记写的是jsp的三个指令九个内置对象,这篇随笔开始写jsp的动作标签,动作标签是由服务器(Tomcat)来解释执行,与java代码一样,都是在服务器端执行的,jsp动作标签有十几多个,这里只写 ...

  10. LeetCode - 415. Add Strings

    Given two non-negative numbers num1 and num2 represented as string, return the sum of num1 and num2. ...