C#中操作XML (修改完整版) (转)

C# 创建xml,读取xml,修改xml C# 创建xml,读取xml,修改xml 一.创建xml 如何如下xml <?xml version="1.0" encoding="UTF-8"?> <Configuration Name="TDS_Configuration" Version="1.0" ProgID="BT_TF30103" DataFormat="CDAB" StringFormat="1" RunMode="Element" > <DeviceSource SourceType="0"> 阅读详情

1.新建一个XML文件(bookstore.xml)如下:

<?xml version="1.0" encoding="gb2312"?>
<bookstore>
  
<book genre="fantasy" ISBN="2-3631-4">
    
<title>Oberon's Legacy</title>
    
<author>Corets, Eva</author>
    
<price>5.95</price>
  
</book>
</bookstore>


2.以下是我建立的一个网站前台页面为几个Button操作

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

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

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    
<title>无标题页</title>
</head>
<body>
    
<form id="form1" runat="server">
    
<div>
        
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="增加" />
        
<asp:Button ID="Button2" runat="server" Text="修改" OnClick="Button2_Click" />
        
<asp:Button ID="Button3" runat="server" Text="删除" OnClick="Button3_Click" />
        
<asp:Button ID="Button4" runat="server" OnClick="Button4_Click" Text="显示" /></div>
    
</form>
</body>
</html>


2.后台代码(这里是已经修改调试成功)

using System;
using
 System.Data;
using
 System.Configuration;
using
 System.Web;
using
 System.Web.Security;
using
 System.Web.UI;
using
 System.Web.UI.WebControls;
using
 System.Web.UI.WebControls.WebParts;
using
 System.Web.UI.HtmlControls;
using
 System.Xml;

public partial class
 _Default : System.Web.UI.Page 
{
    
protected void Page_Load(object
 sender, EventArgs e)
    
{

    }

    
protected void Button1_Click(object sender, EventArgs e)
    
{  //往<bookstore>节点中插入一个<book>节点
        XmlDocument xmlDoc = new XmlDocument();
        xmlDoc.Load(Server.MapPath(
"bookstore.xml"
));
        XmlNode root 
= xmlDoc.SelectSingleNode("bookstore");//查找<bookstore>

        XmlElement xe1 = xmlDoc.CreateElement("book");//创建一个<book>节点
        xe1.SetAttribute("genre", "李赞红");//设置该节点genre属性
        xe1.SetAttribute("ISBN", "2-3631-4");//设置该节点ISBN属性

        XmlElement xesub1 
= xmlDoc.CreateElement("title");
        xesub1.InnerText 
= "CS从入门到精通";//设置文本节点

        xe1.AppendChild(xesub1);//添加到<book>节点中
        XmlElement xesub2 = xmlDoc.CreateElement("author");
        xesub2.InnerText 
= "候捷"
;
        xe1.AppendChild(xesub2);
        XmlElement xesub3 
= xmlDoc.CreateElement("price"
);
        xesub3.InnerText 
= "58.3"
;
        xe1.AppendChild(xesub3);

        root.AppendChild(xe1);
//
添加到<bookstore>节点中
       
// xmlDoc.Save("bookstore.xml");

        xmlDoc.Save(Server.MapPath("bookstore.xml"));
    }

    
protected void Button2_Click(object sender, EventArgs e)
    
{
        
//修改节点:将genre属性值为“李赞红“的节点的genre值改为“update李赞红”,将该节点的子节点<author>的文本修改为“亚胜”。

        XmlDocument xmlDoc = new XmlDocument();//修改添加的一行
        xmlDoc.Load(Server.MapPath("bookstore.xml"));//修改添加的一行
        XmlNodeList nodeList = xmlDoc.SelectSingleNode("bookstore").ChildNodes;//获取bookstore节点的所有子节点
        foreach (XmlNode xn in nodeList)//遍历所有子节点
        {
            XmlElement xe 
= (XmlElement)xn;//将子节点类型转换为XmlElement类型

            if (xe.GetAttribute("genre") == "李赞红")//如果genre属性值为“李赞红”
            {
                xe.SetAttribute(
"genre", "update李赞红");//则修改该属性为“update李赞红”


                XmlNodeList nls 
= xe.ChildNodes;//继续获取xe子节点的所有子节点
                foreach (XmlNode xn1 in nls)//遍历
                {
                    XmlElement xe2 
= (XmlElement)xn1;//转换类型

                    if (xe2.Name == "author")//如果找到
                    {
                        xe2.InnerText 
= "亚胜";//则修改

                        break;//找到退出来就可以了
                    }

                }

                
break;
            }

        }

        xmlDoc.Save(Server.MapPath(
"bookstore.xml"));//保存。

    }

    
    
protected void Button3_Click(object sender, EventArgs e)
    
{
        
//删除 <book genre="fantasy" ISBN="2-3631-4">节点的genre属性,删除 <book genre="update李赞红" ISBN="2-3631-4">节点。

        XmlDocument xmlDoc = new XmlDocument();//修改添加的一行
        xmlDoc.Load(Server.MapPath("bookstore.xml"));//修改添加的一行
        XmlNodeList xnl = xmlDoc.SelectSingleNode("bookstore").ChildNodes;
        
foreach (XmlNode xn in
 xnl)
        
{
            XmlElement xe 
=
 (XmlElement)xn;
            
if (xe.GetAttribute("genre") == "fantasy"
)
            
{
                xe.RemoveAttribute(
"genre");//删除genre属性

            }

            
else if (xe.GetAttribute("genre") == "update李赞红")
            
{
                xe.RemoveAll();
//删除该节点的全部内容

            }

        }

        xmlDoc.Save(Server.MapPath(
"bookstore.xml"));//保存。
    }

    
protected void Button4_Click(object sender, EventArgs e)
    
{
        XmlDocument xmlDoc 
= new XmlDocument();//修改添加的一行

        xmlDoc.Load(Server.MapPath("bookstore.xml"));//修改添加的一行
        XmlNode xn = xmlDoc.SelectSingleNode("bookstore");
        XmlNodeList xnl 
=
 xn.ChildNodes;

        
foreach (XmlNode xnf in
 xnl)
        
{
            XmlElement xe 
=
 (XmlElement)xnf;
            Console.WriteLine(xe.GetAttribute(
"genre"));//显示属性值

            Console.WriteLine(xe.GetAttribute("ISBN"));

            XmlNodeList xnf1 
=
 xe.ChildNodes;
            
foreach (XmlNode xn2 in
 xnf1)
            
{
                Console.WriteLine(xn2.InnerText);
//显示子节点点文本

                Response.Write(xn2.InnerText);//查看用的
            }

        }

    }

}

C# XML编程全攻略:深度解析创建、读取、更新与删除操作 在C#中,XML文件常被用于存储配置数据、交换数据或作为轻量级的数据持久化方案。以下是关于C#中如何使用XML文件的详细说明,包括创建、读取、更新和删除XML数据的代码示例,以及详尽的注释解释。 阅读详情

相关推荐

精通C#操作XML:读取、写入及修改指南

可扩展标记语言(Extensible Markup Language,XML)是一种用于存储和传输数据的标记语言,广泛应用于数据交换。XML允许开发者定义自己的标签,使得数据结构化、清晰,易于理解和处理。在C#中处理XML,允许开发者轻松地集成XML数据到应用程序中,无论是用于配置数据、数据交换还是数据存储等。System.Xml命名空间是.NET Framework中用于处理XML文档的核心集合,提供了丰富的API来执行各种XML相关的任务。

weixin_30978239的博客 1823

XML C#增删改查

XML C#增删改查

againknow的博客 1137

C#编写的Excel转XML工具项目

良好的代码规范是保障代码质量的重要因素之一。一个组织或项目应根据具体情况制定代码规范,并要求所有开发人员遵守。这些规范可能包括命名规则、代码格式(如缩进、大括号使用等)、文件和目录结构等。在使用C#进行Excel文件处理时,一个常用且功能强大的库是Microsoft Office Interop。这个库是Microsoft Office套装的一部分,允许开发者在C#程序中直接操作Excel文件。不过,需要注意的是,使用此库需要在运行程序的机器上安装Microsoft Office。

weixin_42113456的博客 979

详解C#操作XML的方法总结

【注2:我们在创建节点的时候用的是XmlElement,但是读取节点信息的时候却用的是XmlNode,这里强调一点:XmlElement是XmlNode的继承,可以调用更多的方法实现相应所需的功能】至此完成了对xml文件的基本操作:创建、读取、修改、添加、删除。又怎么读取这个xml文件的节点信息,以及如何对这个xml文件的节点信息作相应的操作?【注1:想要将对xml文件所做的任何修改生效的话,必须调用Save方法,否则我们所做的修改不会保存】5.删除指定xml文件的节点信息。3.修改xml文件的节点信息。

weixin_51255495的博客 4576

操作系统知识点汇总(王道)

操作系统不论是就业还是升学都是核心的一门课程,对于大部分工科更是必修课程。本文章是对《王道操作系统》所有知识点的总结笔记,以供大家学习以及在备考期间复习使用。让我们一起把知识往脑子里旋好吗!!!......

S mile0804的博客 5万+

【AI气象6】Skilful nowcasting of extreme precipitation with NowcastNet

极端降水是气象灾害的重要因素,因此迫切需要通过高分辨率、长时间预报和局部细节的精准短期预报来减轻其社会经济影响。当前的方法存在模糊、衰减、强度或位置误差,基于物理的数值方法在捕捉关键的混沌动态(如对流起始)时面临挑战,而数据驱动的学习方法则未能遵循内在的物理法则(如平流守恒)。我们提出了 NowcastNet,这是一种针对极端降水的非线性短期预报模型,将物理演变方案与条件学习方法统一到一个端到端的神经网络框架中,通过优化预测误差进行训练。基于来自美国和中国的雷达观测数据,我们的模型能够生成物理上合理的降水短

weixin_51473374的博客 2323

C#读、写、修改xml文件

C#读写修改xml节点

你要明白,任何问题都不是孤立存在的,一定有人曾经遇到过,并且已经有更好的解决办法了,只是我还不知道。我不应该在黑暗中独自前行,去重新发明轮子,也许我的顿悟,只是别人的基本功!我应该要站在巨人的肩膀上,学习更成熟的经验和方法,然后再来解决这个问题 1805

解决fetch_california_housing数据集403错误的3种实用方法(附手动下载地址)

本文针对机器学习中常见的fetch_california_housing数据集403 Forbidden错误,提供了三种实用的解决方案。从理解HTTP 403错误的根源出发,详细介绍了修改源码路径、使用国内镜像源以及手动下载并配置数据文件这三种方法,并附带了可靠的手动下载地址,帮助开发者彻底解决数据加载障碍,确保机器学习项目顺利进行。

weixin_29062963的博客 561

C# XML文件的创建、读写、修改

XML文件的创建、读写和修改

qq_27474555的博客 1636

【免费】最新区块链钱包和私钥的助记词碰撞器,使用python开发

最新钱包私钥助记词碰撞器,搏一搏单车变摩托!

weixin_48529185的博客 1万+

[Python图像识别] 五十二.水书图像识别 (2)基于机器学习的濒危水书古文字识别研究

上一篇文章详细讲解如何利用数据增强方法实现图像数据集的扩充,并以濒危水书作为案例讲解。这篇文章将详细讲解基于机器学习的水书图像识别方法,以图像像素统计为特征开展图像分类讲解,这是最基础的方法,也为后续深度学习图像分类描述提供支撑。基础性文章,希望对您有所帮助!让我们开始吧,且看且珍惜。

杨秀璋的专栏 989

C# XML文件的读写操作

C# XML文件的读写操作 XML(可扩展标记语言) 定义:用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 一、创建xml文件 private void Creat() { XmlTextWriter writer = new XmlTextWriter("xmlTest.xml", System.Text.Encoding.UTF8); //使用自动缩进便于阅读

韬光养晦 1万+

130页5万字某市档案馆数字档案馆建设方案

【版权声明】本资料来源网络,仅用于行业知识分享,供个人学习参考,请勿商用。【侵删致歉】如有侵权请联系小编,将在收到信息后第一时间进行删除!完整资料领取见文末,部分资料内容:国家档案局证实颁布《数字档案馆建设指南》, 明确了数字档案馆建设原则、要求、目标,对相关系统建设内容、功能要求进行了概括和详细说明。数字档案馆系统建设应以 OAIS&nbsp;参考模型为设计基础,以实现数字资源的长期保存与可信管理。设计的数字档案馆系统架构如下图。图-1 数字档案馆体系结构数字档案馆建设包括五大层次和三大保障体系:

zuoan1993的博客 1180

C#中操作XML (修改完整版)

1.新建一个XML文件(bookstore.xml)如下: <?xmlversion="1.0"encoding="gb2312"?><bookstore><bookgenre="fantasy"ISBN="2-3631-4"><title>Oberon'sLegacy</title><...

weixin_30701521的博客 503

STM32F103(二十三)通用同步异步收发器(USART)

学习板:STM32F103ZET6 往期博客: STM32F103五分钟入门系列(一)跑马灯(库函数+寄存器)+加编程模板+GPIO总结 STM32F103五分钟入门系列(二)GPIO的七大寄存器+GPIOx_LCKR作用和配置 STM32F103五分钟入门系列(三)GPIO的常用库函数使用方法总结+一个网络上的误区 STM32F103五分钟入门系列(四)蜂鸣器实验(库函数+寄存器) STM32F103五分钟入门系列(五)按键实验(库函数+寄存器) STM32F103五分钟入门系列(六)时钟框图+相关寄存器

Curnane0_0的博客 1019

Unity零基础到入门 ☀️| 轻松学会 Unity界面布局和简单实例——入门级!(^_−)☆

入门级Unity知识,一起加油呀!

努力前行,总会成为自己心中的那道光 1万+

C#操作XML小结

一、简单介绍using System.Xml;//初始化一个xml实例XmlDocument xml=new XmlDocument();//导入指定xml文件xml.Load(path);xml.Load(HttpContext.Current.Server.MapPath("~/file/bookstore.xml"));//指定一个节点XmlNode root=xml.Selec

祈离的专栏 9万+

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

用C#操作XML

用C#读取,添加,修改,删除XML文件内容.UserBasicInfo.xml         userGuid    jiavia    19801020    ?    a    卡卡西    男    19801020    jiavia@gmail.com    12345        zeoyeo    hhhhhhhh    147    789    963    321    1

AllenTing的专栏 2332

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

C# 操作xml(新建,添加,修改,删除)

C# 操作xml(新建,添加,修改,删除)

我的地盘 2084

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

C#操作XML文件

在C#中XML还是常见的,而且操作简易,往往用以储存简单数据。XMl结构跟树结构类似,层层相关,利用索引找到对应节点进行增删改操作,修改访问操作也是简单上手,赶紧去尝试吧。

weixin_42314624的博客 3332

在C#中操作XML

我用的是一种很笨的方法,但可以帮助初学者了解访问XML节点的过程。   已知有一个XML文件(bookstore.xml)如下:      Oberons Legacy    Corets, Eva    5.95     1、往节点中插入一个节点:   XmlDocument xmlDoc=new XmlDocument();   xml

0ffs3t 6579

C# 使用linq操作xml

一、XML基本概述 XML文件是一种常用的文件格式,例如WinForm里面的app.config以及Web程序中的web.config文件,还有许多重要的场所都有它的身影。Xml是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具。XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然XML占用的空间比二进制数据要占用更多的空间,但XML极其简单易于掌握和使用。微软也提供了一系列类库来倒帮助我们在应用程序中存储XML文件。

weixin_43632687的博客 3239

C# 关于对XML文件的写入读取、删除、修改操作

1、查询节点信息:       实体类成员: class user { public string name { get; set; } public int age { get; set; } public string sex { get; set; } } &...

qq_42773229的博客 1200

C#修改XML的简单例子

接上一篇《C#写XML的简单例子》 这个例子要修改XML文件中结点的属性和和元素的文本 1 原xml文件 bookstore.xml      who am i     who    999        CS从入门到精通    候捷    222   2 program.cs using System;using System.Collections.Gene

耐维吉普 2213
上一篇: 实例讲解Oracle里抽取随机数的多种方法
下一篇: jQuery 图片切换 响应键盘 关联标题
fisea
博客等级 码龄19年 0粉丝 197原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值