01操作XML—C#操作XML文件基础知识

学习笔记,如有错误请指正。?号处也请各位指点下,谢谢。

有一个XML,文件名为“UserInfo.xml”,操作如下:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<users>
    <user1 姓名="张三" 密码="123">我是张三</user1>
    <user2 姓名="李四" 密码="123">我是李四</user2>
</users>

1插入一个节点,添加属性,保存(注意XML文件存放的路径)

XmlDocument xmlDoc = new XmlDocument();//声明xml文件
xml.Load("c:/UserInfo.xml");   //根据路径将XML读取出来
XmlNodeList childlist = xmlDoc.SelectSingleNode("users").ChildNodes; //查找—得到objects下的所有子节点
XmlNodeList nodelist = xmlDoc.CreateElement("user3"); //创建一个节点
xel.SetAttribute("姓名","王二");//设置该节点姓名属性
xel.SetAttribute("密码","123");//设置该节点密码属性
xel.InnerText="我是王二";
root.AppendChild(xel);//添加到节点中
xmlDoc.Save("c:/UserInfo.xml");

运行完成效果:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<users>
    <user1 姓名="张三" 密码="123">我是张三</user1>
    <user2 姓名="李四" 密码="123">我是李四</user2>
    <user3 姓名="王二" 密码="123">我是王二</user3>
</users>

2修改节点

将user3密码修改为”1“,内容修改为”我是王小二“

XmlDocument xmlDoc = new XmlDocument();//声明xml文件
xml.Load("c:/UserInfo.xml");   //根据路径将XML读取出来
XmlNodeList root = xmlDoc.SelectSingleNode("users").ChildNodes; //查找—得到objects下的所有子节点
XmlElement user3 =(XmlElement)root.SelectSingleNode("user3"); //创建一个节点
user3.SetAttribute("密码","1");//设置该节点姓名属性
user3.InnerText="我是王小二";
xmlDoc.Save("c:/UserInfo.xml");

运行完成效果:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<users>
    <user1 姓名="张三" 密码="123">我是张三</user1>
    <user2 姓名="李四" 密码="123">我是李四</user2>
    <user3 姓名="王二" 密码="1">我是王小二</user3>
</users>

3删除属性和节点

XmlDocument xmlDoc = new XmlDocument();//声明xml文件
xml.Load("c:/UserInfo.xml");   //根据路径将XML读取出来
XmlNodeList root = xmlDoc.SelectSingleNode("users").ChildNodes; //查找—得到objects下的所有子节点
XmlElement user3 =(XmlElement)root.SelectSingleNode("user3"); //获取同名同级节点集合
user3.RemoveAttribute("密码");//删除指定的属性
root.RemoveChild(root.SelectSingleNode("user2"));//RemoveChild可从子节点列表中删除某个节点
user3.InnerText="我是王小二";
xmlDoc.Save("c:/UserInfo.xml");

效果如下:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<users>
    <user1 姓名="张三" 密码="123">我是张三</user1>
    <user3 姓名="王二" 密码="1">我是王小二</user3>
</users>

4遍历节点

XmlDocument xmlDoc = new XmlDocument();//声明xml文件
xml.Load("c:/UserInfo.xml");   //根据路径将XML读取出来
XmlNodeList root = xmlDoc.SelectSingleNode("users").ChildNodes; //查找—得到objects下的所有子节点
foreach(XmlNode xn in root.ChildNodes)//遍历节点
Debug.Log(xn.InnerText);
时间: 2024-10-08 08:53:38

01操作XML—C#操作XML文件基础知识的相关文章

[Python学习] 专题四.文件基础知识

        前面讲述了函数.语句和字符串的基础知识,该篇文章主要讲述文件的基础知识(与其他语言非常类似). 一. 文件的基本操作         文件是指存储在外部介质(如磁盘)上数据的集合.文件的操作流程为: 打开文件(读方式\写方式)->读写文件(read\readline\readlines\write\writelines)->关闭文件 1.打开文件 调用函数open打开文件,其函数格式为: file_obj=open(filename[, mode[, buffering]])

C++文件基础知识

一切皆文件,对象和文件的前世今生是一个怎么样的故事?它们之间有什么样的爱恨情仇?...最近在追<国家宝藏>,情不自禁了. 因为之前对C++文件的相关操作一直没重视,写自己paper idea的时候,"书到用时方恨少"的感觉特别强烈,所以系统地学习了文件的基础知识.下面是自己写的一个读取文件内容,并保存到vector<vector<double>>中的代码. #pragma once#include<iostream>#include<

操作文件基础知识

Linux 文件含义 文件和文件夹 文件属性 内容 ("路径/文件名")filetype("")获取文件类型 文件类型:文件 图片 文件:目录或文件 dir 目录is_dir("");判断是不是目录is_file("");判断是不是文件 fileatime("");上次访问时间filectime("");创建时间filemtime("");修改时间 filesize(

PHP文件基础知识

PHP中的文件是指文件和文件夹(目录) 一.判断文件类型 1.filetype("./aa.txt");//判断文件类型,如果是文件返回file,如果是目录的话返回dir 2.is_dir("./test");//判断给的路径是不是目录,是的话返回True,否则是FALSE 3.is_file("./aa.txt");//判断给定的路径是不是文件 二.获取文件的属性 1.echo date("Y-m-d H:i:s",file

专题四.文件基础知识

https://blog.csdn.net/Eastmount/article/details/39854689 5.文件操作 6.字符编码与转码 一. 文件的基本操作 二. 文件与循环 三. 总结 原文地址:https://www.cnblogs.com/chenhuan123/p/12038341.html

Sass 文件 基础知识

sass文件名为.scss 可以设置变量 //sass style $fontStack:Heletica,sans-serif;$primaryColor:#333; body{ font-family:$fontStack; color:$primaryColor;} //css style //-----------------------------------body { font-family: Helvetica, sans-serif; color: #333;} 嵌套 - sa

c语言文件基础知识

#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <string.h> /* * EOF: 符号常量,其值为-1. * fgets() 最多读取int-1个字符,遇换行或EOF即返回. * fputs() 写文件时,忽略字符串截止符'\0'. * fread()和fwrite() 数据块读写,多用于结构体数组(顺序存储的结构体). * * 函数原型: * 读: * int fge

006.头文件 | 基础知识

1.引用头文件 标准头文件       #include <iostream> 自定义头文件   #include "complex.h" 2.防卫式(guard)声明 //以complex.h为例 #ifndef __COMPLEX__ #define __COMPLEX__ /* * * * */ #endif 原文地址:https://www.cnblogs.com/paulprayer/p/10109713.html

模块补充(文件压缩,系统命令操作,配置文件操作和xml)和面向对象初级篇

模块补充 configparser(提供配置文件的读写解析操作) configparser的方法 sections() #获取配置文件的所有section(返回列表) items(section) #获取指定section下所有的键值对(返回一个列表,一个键值对是一个元祖) options(section) #获取指定节点下所有的键(返回列表) get(section,option) #获取指定节点下的指定option的值,返回字符串 getint(section, option) #获取指定节