xml是一种可扩展标记语言,在电子计算机中,标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种的信息比如文章等。它可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 它非常适合万维网传输,提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。是Internet环境中跨平台的、依赖于内容的技术,也是当今处理分布式结构信息的有效工具。

现在演示一下在asp.net里如何操作读写xml文件

1.新建一个web窗体WebForm1.aspx和一个xml文件XMLFile1.xml

(1)WebForm1.aspx页面代码

放置两个按钮,一个用来写入,一个用来读取;和一个lable控件用来显示读取信息

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="读写xml文件.WebForm1" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" Text="写入" OnClick="Button1_Click" />
<asp:Button ID="write" runat="server" Text="读取" OnClick="write_Click" />
</div>
<asp:Label ID="Label1" runat="server"></asp:Label>
</form>
</body>
</html>

(2)WebForm1.aspx.cs后台代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Xml; namespace 读写xml文件
{
public partial class WebForm1 : System.Web.UI.Page
{ protected void Page_Load(object sender, EventArgs e)
{ } protected void Button1_Click(object sender, EventArgs e)
{ //写入xml
//写入xml的路径
string path = Server.MapPath("XMLFile1.xml");
//创建文件格式对象
XmlTextWriter xml = new XmlTextWriter(path, System.Text.Encoding.UTF8);
xml.WriteStartDocument();//调用WriteStartDocument()方法来开始写入XML文档 xml.WriteStartElement("最美评比"); //写根节点 xml.WriteStartElement("student");//写子节点
xml.WriteStartElement("张三");//写字节点
xml.WriteAttributeString("color", "red");//给节点添加属性(好像无用)
xml.WriteString("姓名:张三");
xml.WriteString("<br />备注:I'm a boy"); //给节点内部添加文本
xml.WriteEndElement();//关闭字节点
xml.WriteEndElement();//关闭子节点 xml.WriteStartElement("student");
//通过WriteElementString可以添加一个字节点同时添加节点内容
xml.WriteElementString("姓名", "貂蝉");
xml.WriteElementString("备注", "I'm a gril");
xml.WriteEndElement(); xml.WriteStartElement("student");
xml.WriteElementString("姓名", "吕布");
xml.WriteElementString("备注", "I'm a MR");
xml.WriteEndElement(); //相比上方先建节点,在添加节点内容,这种方法更简便
xml.WriteStartElement("student");
xml.WriteElementString("stuNO", "");
xml.WriteElementString("stuName", "cv");
//student标签的关闭标签
xml.WriteEndElement(); xml.WriteEndElement();//关闭根节点
xml.Flush();//刷新流
xml.Close();//关闭流
} protected void write_Click(object sender, EventArgs e)
{//读取
string path = Server.MapPath("XMLFile1.xml");//读取路径
//创建文件格式对象
XmlTextReader xml = new XmlTextReader(path);//调用路径
int index = ;//索引值学生
int a = ;
while (xml.Read())
{
if (xml.NodeType == XmlNodeType.Element)
{
if (xml.Name == "student")
{
this.Label1.Text += "学生 " + index + " 信息如下:<br />";
index++;
}
if (xml.Name == "stuNO")
{
this.Label1.Text += "学号:" + xml.ReadElementString() + "<br />";
}
if (xml.Name == "stuName")
{
this.Label1.Text += "姓名:" + xml.ReadElementString() + "<br />";
}
if (xml.Name == "姓名")
{
this.Label1.Text += "姓名:" + xml.ReadElementString() + "<br />"; }
if (xml.Name == "备注")//括号里为节点名
{
this.Label1.Text += "备注:" + xml.ReadElementString() + "<br />"; }
if (xml.Name == "张三")//括号里为节点名
{
this.Label1.Text += "" + xml.ReadElementString() + "<br />"; } } }
}
}
}

值得注意的是,在后台代码里每一个节点的WriteStartElement要对应一个WriteEndElement;层次关系要分明,尽管在你写入的时候没报错,但是在你读取的时候,可能会发生不是你想要的结果

(3)XMLFile1.xml

新建的xml文件除了顶头文件表示,其余都是空白的

(4)运行程序

注意的是:你首先要把数据提交写入到xml文件里,才能读取到数据

点击提交按钮之后,不要急着去点读取按钮,返回程序会有这样一个界面

点击是,更新xml里的数据

以下就是更新之后的XMLFile1.xml文件

 <?xml version="1.0" encoding="utf-8"?>
<最美评比>
<student>
<张三 color="red">姓名:张三&lt;br /&gt;备注:I'm a boy</张三>
</student>
<student>
<姓名>貂蝉</姓名>
<备注>I'm a gril</备注>
</student>
<student>
<姓名>吕布</姓名>
<备注>I'm a MR</备注>
</student>
<student>
<stuNO></stuNO>
<stuName>cv</stuName>
</student>
</最美评比>

关灯之后写完的累趴小编!!

ASP.NET写入和读取xml文件的更多相关文章

  1. 在C#程序中,创建、写入、读取XML文件的方法

    一.在C#程序中,创建.写入.读取XML文件的方法 1.创建和读取XML文件的方法,Values为需要写入的值 private void WriteXML(string Values) { //保存的 ...

  2. 读取xml文件,写入excel

    在上一篇 Python写xml文件已经将所有订单写入xml文件,这一篇我们把xml文件中的内容读出来,写入excel文件. 输入xml格式: <?xml version="1.0&qu ...

  3. C#读取xml文件写入到TreeView中

    开发过程中我们会遇到一些读取xml文件的时候,下面是我学习的整理. 用XmlDocument读取加载 XmlDocument doc = new XmlDocument(); doc.Load(&qu ...

  4. ASP.NET MVC 学习笔记-2.Razor语法 ASP.NET MVC 学习笔记-1.ASP.NET MVC 基础 反射的具体应用 策略模式的具体应用 责任链模式的具体应用 ServiceStack.Redis订阅发布服务的调用 C#读取XML文件的基类实现

    ASP.NET MVC 学习笔记-2.Razor语法   1.         表达式 表达式必须跟在“@”符号之后, 2.         代码块 代码块必须位于“@{}”中,并且每行代码必须以“: ...

  5. 浅谈JS中的!=、== 、!==、===的用法和区别 JS中Null与Undefined的区别 读取XML文件 获取路径的方式 C#中Cookie,Session,Application的用法与区别? c#反射 抽象工厂

    浅谈JS中的!=.== .!==.===的用法和区别   var num = 1;     var str = '1';     var test = 1;     test == num  //tr ...

  6. python读取xml文件

    关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python 来读取xml 文件. 什么是 ...

  7. python专题-读取xml文件

    关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python 来读取xml 文件. 什么是 ...

  8. 【Python实例一】使用minidom读取xml文件

    前言:最近刚在廖雪峰老师的网站里学习了Python的基础内容,想着循序渐进地找点实例练练手,网上看到有很多相关资料,决定针对感兴趣的内容实际编码实践一下,昨天刚好看到有关使用Python来读取XML文 ...

  9. java读取xml文件并转换成对象,并进行修改

    1.首先要写工具类,处理读取和写入xml文件使用的工具.XMLUtil.javaimport java.io.FileInputStream; import java.io.FileWriter; i ...

随机推荐

  1. Jmeter函数引用和函数重定向【转】

    在jmeter中的[选项]中选择[函数助手对话框]---这些函数可以高速有效的帮助我们开展自动化编写与校验!!!!!! 如图: 重点!!!本章的侧重点不讲函数的具体使用,函数具体的使用与java类似, ...

  2. Bootstrap中的Glyphicon 字体图标

    在Bootstrap框架中也为大家提供了近200个不同的icon图片,而这些图标都是使用CSS3的@font-face属性配合字体来实现的icon效果. 1 <!DOCTYPE html> ...

  3. Python迭代器生成器,模块和包

      1.迭代器和生成器 2.模块和包 1.迭代器 迭代器对象要求支持迭代器协议的对象,在Python中,支持迭代器协议就是实现对象的__iter__()和__next__()方法.    其中__it ...

  4. BZOJ 2836 魔法树 链剖裸题~~

    正好练练熟练度..(刷水题谋财害命QAQ) #include<cstdio> #include<iostream> #define ll long long #define R ...

  5. day_07 深浅拷贝

    1. 基础数据类型的补充 1字符串的操作: 1.join 把字符串或者列表的的内拼接,拼接成字符串 和split相反--把字符串转换成列表 2.删除 字典和列表在循环中是不能进行删除的,可以在循环中把 ...

  6. Django ORM 最后操作

    F查询:代表2个字段之间的比较 from django.db.models import F models.Book.objects.filter(price__gt=F('keep_price')) ...

  7. n阶乘,位数,log函数,斯特林公式

    一.log函数 头文件: #include <math.h> 使用: 引入#include<cmath> 以e为底:log(exp(n)) 以10为底:log10(n) 以m为 ...

  8. canvas基础入门(二)绘制线条、三角形、七巧板

    复杂的内容都是有简单的线条结合而成的,想要绘制出复杂好看的内容先从画直线开始 canvas绘制直线先认识几个函数 beginPath():开始一条路径,或重置当前的路径 moveTo(x,y):用于规 ...

  9. Java程序员进阶架构师推荐阅读书籍

    [IT168 技术]作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从.我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,推荐给大家,特别是那些 ...

  10. Django-5.2 模型层 多表操作

    7.3 多表操作 一.创建模型 实例:我们来假定下面这些概念,字段和关系作者模型:一个作者有姓名和年龄.作者详细模型:把作者的详情放到详情表,包含生日,手机号,家庭住址等信息.作者详情模型和作者模型之 ...