今天瞎写的关于XML的一些。

using System;
using System.Windows.Forms;
using System.Xml;
namespace winformDemo
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
//XmlDocument打开文档
XmlDocument xc = new XmlDocument();
/// <summary>
/// 显示所有商品的名字
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click(object sender, EventArgs e)
{
this.textBox1.Text = "";
// xc.Load(写入要获取文档的路径)
xc.Load("D:\\Text\\shopping.xml");
//XmlNodeList xnl = xc.SelectSingleNode("shopping").ChildNodes;获取shopping下面的子节点放到集合里。
XmlNodeList xnl = xc.SelectSingleNode("shopping").ChildNodes;
//循环去取子节点
foreach (XmlNode xn in xnl)
{
//获取商品名字。
//this.textBox1.Text += xn.Attributes["id"].Value + "\r\n";
foreach (XmlNode xnd in xn.ChildNodes)
{
if (xnd.Name == "Shopname")
{
textBox1.Text += "商品名字:" + xnd.InnerText + "\r\n";
}
}
}
}
/// <summary>
/// 显示所有商品信息
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button2_Click(object sender, EventArgs e)
{
this.textBox2.Text = "";
// xc.Load(写入要获取文档的路径)
xc.Load("D:\\Text\\shopping.xml");
//XmlNodeList xnl = xc.SelectSingleNode("shopping").ChildNodes;获取shopping下面的子节点放到集合里。
XmlNodeList xnl = xc.SelectSingleNode("shopping").ChildNodes;
//XmlNodeList xnl = xc.SelectSingleNode("/shopping/shop[last()]").ChildNodes;
//XmlNodeList xnl = xc.SelectSingleNode("/shopping/shop[@id=2]").ChildNodes;
//循环去取子节点
foreach (XmlNode xn in xnl)
{
//取最后一条数据
//textBox2.Text += "商品名字:" + xn.InnerText + "\r\n";
//获取所有商品的信息。
textBox2.Text += "商品ID:" + xn.Attributes["id"].Value + "\r\n";
textBox2.Text += "商品名字:" + xn.ChildNodes[0].InnerText + "\r\n";
textBox2.Text += "商品价格:" + xn.ChildNodes[1].InnerText + "\r\n";
textBox2.Text += "商品数量:" + xn.ChildNodes[2].InnerText + "\r\n";
}
}
/// <summary>
/// 读取所有信息
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button3_Click(object sender, EventArgs e)
{
this.textBox3.Text = "";
XmlReader reader = XmlReader.Create(@"D:\\Text\\shopping.xml");
while (reader.Read())
{
switch (reader.NodeType)
{
case XmlNodeType.Attribute:
for (int i = 0; i < reader.AttributeCount; i++)
{
reader.MoveToAttribute(i);
this.textBox3.Text += "属性:" + reader.Name + "=" + reader.Value + "\r\n";
}
break;
case XmlNodeType.Element:
this.textBox3.Text += "节点名称:" + reader.LocalName + "\r\n";
for (int i = 0; i < reader.AttributeCount; i++)
{
reader.MoveToAttribute(i);
this.textBox3.Text += "属性:" + reader.Name + "=" + reader.Value + "\r\n";
}
break;
case XmlNodeType.Text:
this.textBox3.Text += "节点内容:" + reader.Value + "\r\n";
break;
}
}
}
/// <summary>
/// 添加信息
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button4_Click(object sender, EventArgs e)
{
XmlWriter writer = XmlWriter.Create(@"D:\\Text\\goods.xml");
writer.WriteStartElement("dog");
writer.WriteAttributeString("color", "black");
writer.WriteString("How can I be sure");
writer.WriteEndDocument();
writer.Close();
}
}
}
添加XML 是直接添加进去了,没有显示出来。所以不要重复点击,可以去文本里看。
总结的一些:
XML
xml:
(超级标记语言)又称(可扩展标记语言)(简单的数据存储语言)(数据存储技术)
格式:
gb2312,UTF-8;
数据库的存储是XML格式。
特点:
跨平台、跨语言、跨系统、跨浏览器、节点名自定义、封闭、区分大小写、属性自定义、唯一根节点。
C#提供XML的对象和方法:
XMLDocument(xml文档):(load(路径)、SelectSingleNode(获取根节点)、childNodes(子节点))
XMLNodelist(节点集合):(XmlNodeList list=根节点下节点)
XMLNode(节点):(属性:text、innerText、name、attributrs[]、value、childNodes)
今天瞎写的关于XML的一些。的更多相关文章
- bzoj1588: [HNOI2002]营业额统计 splay瞎写
最近各种瞎写数论题,感觉需要回顾一下数据结构 写一发splay冷静一下(手速过慢,以后要多练练) 用splay是最直接的方法,但我感觉离散一波应该可以做出来(没仔细想过) 现在没有很追求代码优美,感觉 ...
- log4j.properties中的这句话“log4j.logger.org.hibernate.SQL=DEBUG ”该怎么写在log4j.xml里面呢?
http://www.cnblogs.com/gredswsh/p/log4j_xml_properties.html 请问:log4j.properties中的这句话“log4j.logger.or ...
- IDEA中写MyBatis的xml配置文件编译报错的坑
IDEA中写MyBatis的xml配置文件编译报错的坑 说明:用IDEA编译工具在项目中使用Mybatis框架,编写mybatis-config.xml和Mapper.xml配置文件时,编译项目出现错 ...
- SSM框架中写sql在xml文件中
第一种(用Mapper.xml映射文件中定义了操作数据库sql) 注意点: 1.#{}与${} #{}表示一个占位符,使用占位符可以防止sql注入, ${}通过${}可以将parameterType传 ...
- XML文件的写,集合XML序列化(写)。XML文件的读,递归遍历
XML文件:必须要有一个节点.检验xml文件,可以用浏览器打开,能打开表示对,否则错. 处理方法: DOM:XmlDocument文档对象模型 Sax(事件驱动,XmlReader) XmlSeria ...
- 【HTTP】 认证和单点登录 【瞎写的…】
■ Cookie,Session,Token HTTP协议是一种无状态的协议.换言之,每一个HTTP请求在得到HTTP回应之后就会断开客户端到服务端的连接.客户端可能会有下一次请求,但是那是下一次的事 ...
- 帮助小伙伴写的组装xml字符串类
import java.io.IOException; import java.io.StringWriter; import java.util.ArrayList; import java.uti ...
- 写hibernate.cfg.xml时报错The content of element type "property" must match "(meta*,(column|formula)*,type?)".
原配置文件是这样的 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-ma ...
- 瞎写的树dfs序
这里枚举了树的DFS序来解决树上问题的多个板子,自己最好多看看. ↓改↓ ↓求↓ 点 点 ————————>>>这个就算了 点 树 简单, BIT 点 链 重点! 树 树 简单, 线 ...
随机推荐
- SUBSET
DESCRIPTION:一开始你有一个空集,集合可以出现重复元素,然后有Q 个操作1. add s在集合中加入数字s.2. del s在集合中删除数字s.保证s 存在3. cnt s查询满足a& ...
- java学习笔记—Tomcat(9)
1 目录结构 bin 二进制目录,主要存储的是一些启动和停止服务器的命令startup.bat conf 配置目录,server.xml web.xml lib 服务器软件使用的第三方的j ...
- 关于Mybatis 反向生成后 查询结果全部为null 解决办法
今天遇到了一个问题,就是mybatis通过反向生成工具 生成的pojo类(实体类) xml文件 以及Mapper之后查询时结果为null 我写的代码怎么看都没有错 就是没有结果 后来在排除错误的时候发 ...
- 《快学Scala》第二章 控制结构和函数
- 【FAQ】Maven 本地仓库明明有jar包,pom文件还是报错解决办法
方法一: 找到出错的jar包文件位置,删掉_maven.repositories文件 方法二: maven中的本地仓库的index索引没有更新导致 解决方案: 在eclipse中打开菜单 window ...
- SQL 中用户建立与权限授予
SQL 中用户建立与权限授予 一.原有 如果大家对我的博客动态非常关注的话,应该又看到我弄了一个随机MAN信息的小工具.但是呢,那个工具还有待加强(显示效果不是那么的好). 所以我就希望可以显示一些简 ...
- vue+ivew-admin开发项目,内存占用过大解决办法
项目用的ivew+admin ivewUI,直接从github上拉下来用的,配置也没改,我们页面比较多,大该30个页面的样子,一启用,我们的电脑就卡了,然后,看一下,内存占用 1.5G+了,我们电脑4 ...
- Java操作数据库实现"增删改查"
本文主要讲解JDBC操作数据库 主要实现对MySql数据库的"增删改查" 综合概述: JDBC的常用类和接口 一 DriverManager类 DriverManage类 ...
- python全栈开发_day17_时间,系统模板和序列化
一:时间模板 1)time 常用功能: time.sleep() time.time() time.strftime() import time print(time.strftime("% ...
- [JZOJ6089]【CodeChef 2014 April Challenge】Final Battle of Chef【数据结构】【整体二分】
Description \(n,q,V\leq 100000,w_i\leq 10^9\) Solution 又是一道大数据结构 由于有一个下取整,这就导致了不同时间的修改值是不能简单的直接加在一起的 ...