使用LINQ TO XML 创建xml文档,以及读取xml文档把内容显示到GridView例子
首先,准备了一个Model类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace XML
{
public class bookModel
{
public string bookType { get; set; }
public string bookISBN { get; set; }
public string bookName { get; set; }
public string bookAuthor { get; set; }
public double bookPrice { get; set; }
}
}
实体类
这个是创建xml文档的方法
/// <summary>
/// 使用LINQ To Xml 创建xml文档
/// </summary>
/// <param name="fileName">文件名</param>
private void CreateXML(string fileName)
{
var xdoc = new XDocument(
new XElement("bookstore", //根节点
new XElement("book", //子节点
new XAttribute("Type", "必修课") //子节点属性
, new XAttribute("ISBN", "1.00.0001") //子节点下的内容
, new XElement("title", "语文")
, new XElement("author", "张三")
, new XElement("price", "100.00")
)
,
new XElement("book",
new XAttribute("Type", "必修课")
, new XAttribute("ISBN", "1.00.0002")
, new XElement("title", "数学")
, new XElement("author", "李四")
, new XElement("price", "50.00")
)
,
new XElement("book",
new XAttribute("Type", "必修课")
, new XAttribute("ISBN", "1.00.0003")
, new XElement("title", "英语")
, new XElement("author", "王五")
, new XElement("price", "25.00")
)
,
new XElement("book",
new XAttribute("Type", "必修课")
, new XAttribute("ISBN", "1.00.0004")
, new XElement("title", "c语言")
, new XElement("author", "某某")
, new XElement("price", "1000")
)
,
new XElement("book",
new XAttribute("Type", "必修课")
, new XAttribute("ISBN", "1.00.0005")
, new XElement("title", "算法设计与分析")
, new XElement("author", "问问")
, new XElement("price", "230.00")
)
,
new XElement("book",
new XAttribute("Type", "选修课")
, new XAttribute("ISBN", "1.00.0008")
, new XElement("title", "计算机操作系统")
, new XElement("author", "飞")
, new XElement("price", "500")
)
)
);
xdoc.Save(fileName); //文件创建(保存)在当前项目解决方案的DeBug下
}
这个是读取xml文档以及把读取内容显示到Grid的方法
private void LoadData()
{
try
{
//加载文档并取得根节点
XElement root = XElement.Load("book.xml");
//取得根节点下所有名为book的子节点以及子节点下的内容
IEnumerable<XElement> targetNode = from target in root.Descendants("book") select target;
List<bookModel> lst = new List<bookModel>();
foreach (XElement node in targetNode)
{
//实例Model,给字段赋值
bookModel model = new bookModel();
model.bookType = node.Attribute("Type").Value.ToString();
model.bookISBN = node.Attribute("ISBN").Value.ToString();
model.bookName = node.Element("title").Value.ToString();
model.bookAuthor = node.Element("author").Value.ToString();
model.bookPrice = Convert.ToDouble(node.Element("price").Value);
lst.Add(model);
}
gdvBook.DataSource = lst; }
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
读取XML、显示Grid
使用LINQ TO XML 创建xml文档,以及读取xml文档把内容显示到GridView例子的更多相关文章
- 从多个XML文档中读取数据用于显示webapi帮助文档
前言: 你先得知道HelpPageConfig文件,不知道说明你现在不需要这个,所以下文就不用看了,等知道了再看也不急.当然如果你很知道这个,下文也不用看了,因为你会了. 方法一: new XmlDo ...
- 【XML】利用Dom4j读取XML文档以及写入XML文档
Dom4j简介 dom4j是一个Java的XML API,是jdom的升级品,用来读写XML文件的.dom4j是一个十分优秀的JavaXML API,具有性能优异.功能强大和极其易使用的特点,它的性能 ...
- [Swift通天遁地]七、数据与安全-(8)创建普通PDF文档和加密PDF文档
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- PowerDesigner(九)-模型文档编辑器(生成项目文档)(转)
模型文档编辑器 PowerDesigner的模型文档(Model Report)是基于模型的,面向项目的概览文档,提供了灵活,丰富的模型文档编辑界面,实现了设计,修改和输出模型文档的全过程. 模型文 ...
- GhostDoc:生成.NET API文档的工具 (帮忙文档)
在 Sandcastle:生成.NET API文档的工具 (帮忙文档) 后提供另一个生成API文档的工具. 1) 准备工作 安装GhostDoc Proc. 收费的哦.... 这个工具的优势是不像 ...
- java 处理word文档 (含图片,表格内容)
因为本人长期从事Oa相关项目的开发,所以处理word文档,Pdf,Excel等是在所难免的. 1.需求 处理Excel 能够用jxl 或者poi 2需求 用户在系统上填 ...
- 用java将简单的word文档换成pdf文档
用java将简单的word文档换成pdf文档的方式很多,因为很多都没有实际测试过,所以这里就先泛泛的说一下 整体上来看分两种: 1.纯java代码实现,有很多优秀的开源软件可以用,比如poi,itex ...
- 使用requests爬取梨视频、bilibili视频、汽车之家,bs4遍历文档树、搜索文档树,css选择器
今日内容概要 使用requests爬取梨视频 requests+bs4爬取汽车之家 bs4遍历文档树 bs4搜索文档树 css选择器 内容详细 1.使用requests爬取梨视频 # 模拟发送http ...
- Java文档注释导出帮助文档和项目的jar包导入和导出。
1.1 文档注释导出帮助文档 在eclipse使用时,可以配合文档注释,导出对类的说明文档,从而供其他人阅读学习与使用. 通过使用文档注释,将类或者方法进行注释用@简单标注基本信息.如@au ...
随机推荐
- 201521123037 《Java程序设计》第14周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容. 2. 书面作业 1. MySQL数据库基本操作 1.1 建立数据库,将自己的姓名.学号作为一条记录插入.(截图, ...
- 201521123033《Java程序设计》第10周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容. answer: 2. 书面作业 本次PTA作业题集异常.多线程 1.finally 题目4-2 1.1 截图 ...
- 201521123026 《java程序设计》 第九周学习总结
1. 本章学习总结 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2. 书面作业 Q1.常用异常 题目5-1 1.1 截图你的提交结果(出现学号) PTA提交结果: 运行结果截图: 1.2 ...
- oracle 建表空间->创建用户并把表空间分配给用户->给用户授权->导库
首先注意:我参考网上使用的sysdba模式(normal)登陆的,其他的模式建不了用户(个人没有进行其他模式的表空间尝试,如有人尝试欢迎补充,感激不尽) 表空间相当于表的容器(一下所有的操作都适用于o ...
- lintcode.177 把排序数组转换为高度最小的二叉搜索树
把排序数组转换为高度最小的二叉搜索树 描述 笔记 数据 评测 给一个排序数组(从小到大),将其转换为一棵高度最小的排序二叉树. 注意事项 There may exist multiple val ...
- webservice06#异常#Handler
1, 异常处理 package com.yangw.soap.service; public class UserException extends Exception { public UserEx ...
- centOS 6 服务管理与服务脚本
服务管理与服务脚本 linux服务 服务管理与服务脚本 linux服务 服务启动过程详解 chkconfig命令 非独立服务与xinetd进程 一个特殊的服务脚本 服务启动过程详解 在开机启动 ...
- SimpleRpc-序列化与反序列化的设计与实现
为什么需要序列化和反序列化? 假设你是客户端,现在要调用远程的加法计算服务,你与服务端商定好了发送数据的格式:发送8个字节的请求,前4字节是第一个数,后4字节是第二个数,服务端读取数据的时候也按照商定 ...
- RMQ问题第一弹
今天,我给大家分享一下我在学习 RMQ 问题过程中对该问题的理解. RMQ (Range Minimum/Maximum Query ):中文名为"区间最值查询".RMQ 问题指的 ...
- Manacher详解
之前的字符串题解中对Manacher的思想进行了简略的介绍,在这篇文章中,我将会详细的将这个算法的初衷和具体实现理论进行解释.声明一点,这是我个人的理解,可能有不全面之处,望多包涵.在之前的几篇文章中 ...