博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
读取XML文件
阅读量:7068 次
发布时间:2019-06-28

本文共 1627 字,大约阅读时间需要 5 分钟。

首先要确定好XML文件的位置,最好是放在程序的debug文件中,放在其他地方也可以,要写上绝对路径

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Xml;//引入命名空间
namespace XMLDemo
{
    public partial class FrmReadXML : Form
    {
        public FrmReadXML()
        {
            InitializeComponent();
        }
        private void btnLoadXML_Click(object sender, EventArgs e)
        {
            XmlDocument objDoc = new XmlDocument();  //【1】创建XML文档操作对象
            objDoc.Load("StuScore.xml");  //【2】加载XML文件到文档对象中
            XmlNode rootNode = objDoc.DocumentElement;  //【3】获取XML文档根目录
            List<Student> list = new List<Student>();//创建对象集合
            foreach (XmlNode stuNode in rootNode.ChildNodes)  //【4】遍历根节点(根节点包含所有节点)
            {
                if (stuNode.Name == "Student")
                {
                    Student objStu = new Student();
                    foreach (XmlNode subNode in stuNode)  //【5】遍历子节点
                    {
                        switch (subNode.Name)//根据子节点的名称封装到对象的属性
                        {
                            case "StuName":
                                objStu.StuName = subNode.InnerText;//获取《节点名称》对应的《节点值》
                                break;
                            case "StuAge":
                                objStu.StuAge = Convert.ToInt16(subNode.InnerText);
                                break;
                            case "Gender":
                                objStu.Gender = subNode.InnerText;
                                break;
                            case "ClassName":
                                objStu.ClassName = subNode.InnerText;
                                break;
                        }
                    }
                    list.Add(objStu);
                }
            }
            this.dgvStuList.DataSource = list;
        }
        //显示版本信息
        private void btnShowVersion_Click(object sender, EventArgs e)
        {
            //创建XML读取器
            XmlTextReader tReader = new XmlTextReader("StuScore.xml");
            string info = string.Empty;
            //循环查询
            while (tReader.Read())
            {
                if (tReader.Name == "Version")
                {
                    info = "版本:" + tReader.GetAttribute("vNo") + " 发布时间:" 
                        + tReader.GetAttribute("pTime");
                    break;
                }
            }
            MessageBox.Show(info,"数据版本");
        }
    }
}

 

转载于:https://www.cnblogs.com/superMay/p/4108430.html

你可能感兴趣的文章
Simditor 富文本编辑器基本使用
查看>>
NET 平台下的WebService 简单使用
查看>>
final 和static的关系
查看>>
类linux系统/proc/sysrq-trigger文件功能作用
查看>>
Node.js 手册查询-5-Ejs 方法
查看>>
[Linux]安装pyenv
查看>>
Javascript 函数和变量提升
查看>>
vue 状态管理(三)
查看>>
独立的小易
查看>>
SEO(search engine optimization)搜索引擎优化
查看>>
1293: [SCOI2009]生日礼物
查看>>
Vue篇1
查看>>
[BZOJ 1923][Sdoi2010]外星千足虫(高斯消元XOR)
查看>>
spark 大型项目实战(九):用户访问session分析(九) --开发JDBC辅助组件(连接池)
查看>>
leetcode-867-Transpose Matrix(矩阵由按行存储变成按列存储)
查看>>
Caffe SSD Ubuntu16 04 训练自己的数据集
查看>>
浅析专题中的构图之美
查看>>
Google文件系统(一)
查看>>
全球最危险的笔点出现了!竞标达134万美元
查看>>
常用正则表达式
查看>>