有时候要用到Xml的读取和写入,甚至有时候需要新建一个Xml,但是好长时间不用这东西,都忘了,所以就写了一个类库,想用的时候直接拿过来用就OK了

下面是代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml;namespace Xmlleiku
{public class Xmllei{public static string xmlpath = string.Empty;/// <summary>/// 初始化xml的物理地址/// </summary>/// <param name="path">物理地址</param>public Xmllei(string path){xmlpath = path;}/// <summary>/// 读取xml中的内容/// </summary>/// <param name="element">节点的名字</param>public Dictionary<int, string[]> Reader(string element){XmlDocument xodc = new XmlDocument();xodc.Load(xmlpath);XmlNodeList lis = xodc.GetElementsByTagName(element);Dictionary<int, string[]> dic = new Dictionary<int, string[]>();int j = 0;foreach (XmlNode item in lis){string[] a = new string[item.ChildNodes.Count];for (int i = 0; i < item.ChildNodes.Count; i++){a[i] = item.ChildNodes.Item(i).InnerText;}dic.Add(j++, a);}return dic;}/// <summary>/// 写入已有的Xml文档/// </summary>/// <param name="element">对应的标签组</param>/// <param name="meirong">与标签对应的内容</param>/// <returns></returns>public int Write(string[] element, List<string[]> meirong){int j=0;try{XmlDocument xodc = new XmlDocument();xodc.Load(xmlpath);foreach (string[] item1 in meirong){int i = 1;XmlElement a = xodc.CreateElement(element[0]);foreach (string item2 in item1){XmlElement b = xodc.CreateElement(element[i++]);b.AppendChild(xodc.CreateTextNode(item2));a.AppendChild(b);}j++;xodc.DocumentElement.AppendChild(a);xodc.Save(xmlpath);}return j;}catch{return 0;}}/// <summary>/// 创建一个新的Xml文档/// </summary>/// <param name="element">包含Xml文档的根目录的标签组</param>/// <param name="meirong">内容数组</param>/// <returns></returns>public int Create(string[] element,List<string[]> meirong){int j = 0;XmlWriterSettings sttingsw = new XmlWriterSettings();sttingsw.Encoding = System.Text.Encoding.UTF8;sttingsw.Indent = true;using (XmlWriter writer = XmlWriter.Create(xmlpath)){writer.WriteStartDocument();writer.WriteStartElement(element[0]);foreach (string[] item1 in meirong){int i = 2;writer.WriteStartElement(element[1]);foreach (string item2 in item1){writer.WriteStartElement(element[i++]);writer.WriteString(item2);writer.WriteEndElement();}writer.WriteEndElement();j++;}writer.WriteEndElement();writer.WriteEndDocument();}return j;}}
}

Xml读取和写入以及新建相关推荐

  1. xml 和android脚本之家,Android利用Document实现xml读取和写入操作

    本文实例为大家分享了利用Document实现xml读取和写入操作,供大家参考,具体内容如下 首先先来介绍一下什么xml?xml是可扩展标记语言,他可以用来标记数据,定义数据类型.是一种允许用户对自己标 ...

  2. java mongo 获取所有数据库_Spring Batch —从XML读取并写入Mongo

    Java面试必备之JVM+GC教程 这几天闲着在优锐课的java学习必备中学习了,在本文中,了解如何使用Spring Batch通过StaxEventItemReader使用ItemReader读取X ...

  3. C# 简单的XML读取修改写入

    XML概念 Root XML根节点,只能且必须有一个(以上为LinkLibrary) Element 节点元素(如Link) Attribute 节点属性(如Cat, Url, Desc) Conte ...

  4. pythonxml读写_python xml读取和写入

    先说说如何创建一个XML文件吧# -*- coding: utf-8 -*- from xml.dom import minidom impl = minidom.getDOMImplementati ...

  5. php如何新建xml文件,PHP新建XML打开XML读取XML怎么写

    下面青岛星网跟大家分享一个PHP操作XML类,其中包括了大量注释,用于在PHP中执行xml的相关操作,比如新建一个XML文件,打开一个XML文件,读取其中的内容等. define("ente ...

  6. Winform中自定义xml配置文件后对节点进行读取与写入

    场景 Winform中自定义xml配置文件,并配置获取文件路径: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100522648 ...

  7. java解析xml文件并写入Excel表

    解析xml文件并写入Excel表 类似于如下格式的xml数据,解析之后将数据写入Excel中 <?xml version="1.0" encoding="UTF-8 ...

  8. 【Unity3D读取数据】(一)Txt文档操作(创建、读取、写入、修改)

    推荐阅读 CSDN主页 GitHub开源地址 Unity3D插件分享 简书地址 我的个人博客 QQ群:1040082875 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有 ...

  9. PhpOffice/PhpSpreadsheet读取和写入Excel

    PhpSpreadsheet是一个纯PHP编写的组件库,它使用现代PHP写法,代码质量和性能比PHPExcel高不少,完全可以替代PHPExcel(PHPExcel已不再维护).使用PhpSpread ...

最新文章

  1. 【Brain】复旦类脑研究院:破解大脑奥秘,为实现人工智能自我思考奠定基础...
  2. bzoj[1835][ZJOI2010]base 基地选址
  3. php vc9安装包免费下载,phpstudy 2013软件下载-phpstudy 2013安装包pc客户端 - 极光下载站...
  4. 清华大学c语言指针ppt,清华大学出版社-C语言10指针.ppt
  5. DL之Yolov3:基于深度学习Yolov3算法实现视频目标检测之对《我要打篮球》视频段进行实时目标检测
  6. 功能对等四个原则_强直患者功能锻炼十分重要
  7. z01、z02.....怎么解压缩
  8. 速度提升2倍,超强悍CPU级骨干网络PP-LCNet出世!
  9. 《Android深度探索》(卷1)HAL与驱动开发 第十章心得体会
  10. python项目开发实例-Python小项目:快速开发出一个简单的学生管理系统
  11. C#4.0新特性学习(四)—匿名方法及Lambda表达式
  12. Eclipse中代码自动提示功能设置
  13. (已解决)Mon Apr 08 14:02:29 CST 2019 WARN: Establishing SSL connection without server's
  14. DocumentFragment文档碎片(高效批量更新多个节点)
  15. hdu-1068POJ1466 Girls and Boys---最大独立集
  16. 数据机房温湿度检测物联网以太网传感器解决方案
  17. kali免杀工具Veil Evasion
  18. 数据结构视频教程 -《浙江大学数据结构与算法徐镜春》
  19. window10安装vnc无法使用,window10安装vnc无法使用的原因和解决办法
  20. IDEA 顶部导航栏(Main Menu)不见了怎么办?

热门文章

  1. 带电插拔损坏设备原理_USB接口设备可以带电插拔吗?
  2. oracle如何设置权限,Oracle创建用户并设置权限
  3. python中用来抛出异常的关键字是( )_python异常抛出
  4. sccket服务器信息获取,websocket断线后重新new了地址,ws.onmessage没有数据
  5. 检测到无效的异常处理程序例程。_异常控制流(1):异常概述和基本类型
  6. c语言 万年历问题,【数组函数面试题】面试问题:万年历的C语言… - 看准网
  7. python sys模块详解_python中os和sys模块的区别与常用方法总结
  8. python pymysql实例_Python使用pymysql模块操作mysql增删改查实例分析
  9. 依赖倒置原则_C#教您一步步摆脱面向过程:依赖倒置
  10. python实验报告_20183122 实验一《Python程序设计》实验报告