private void button1_Click(object sender, RoutedEventArgs e)
{
XmlTextWriter writer = new XmlTextWriter("MyInfo.xml", System.Text.Encoding.UTF8);
//使用自动缩进便于阅读
writer.Formatting = Formatting.Indented;
//XML声明
writer.WriteStartDocument();
//书写根元素
writer.WriteStartElement("Root");
//开始一个元素
writer.WriteStartElement("Item ");
//向先前创建的元素中添加一个属性
writer.WriteAttributeString("id", "");
//添加子元素
writer.WriteElementString("X", "x1");
writer.WriteElementString("Y", "y1");
writer.WriteElementString("Z", "z1");
//关闭item元素
writer.WriteEndElement(); // 关闭元素
//在节点间添加一些空
writer.Close();
}
//读取xml数据
private void button2_Click(object sender, RoutedEventArgs e)
{
string ExePath = AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "\\MyInfo.xml";
try
{
// 1.创建一个XmlDocument类的对象
XmlDocument doc = new XmlDocument();
// 2.把你想要读取的xml文档加载进来
doc.Load(ExePath);
// 3.读取你指定的节点
XmlNode xn = doc.SelectSingleNode("Root");
XmlNodeList lis = xn.ChildNodes;
// 4.取节点中的值
String str = lis[].InnerText;
MessageBox.Show(str);
}
catch
{
MessageBox.Show("配置文件存在异常!");
} } //插入xml数据
private void button3_Click(object sender, RoutedEventArgs e)
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load("MyInfo.xml");
XmlNode root = xmlDoc.SelectSingleNode("Root");//查找父节点
XmlElement xe1 = xmlDoc.CreateElement("Item");//创建一个子节点
xe1.SetAttribute("id", "");//设置该节点id属性
XmlElement xesub1 = xmlDoc.CreateElement("X");
xesub1.InnerText = "x3";//设置文本节点
xe1.AppendChild(xesub1);//添加到<MyInfo>节点中
XmlElement xesub2 = xmlDoc.CreateElement("Y");
xesub2.InnerText = "y3";
xe1.AppendChild(xesub2);
XmlElement xesub3 = xmlDoc.CreateElement("Z");
xesub3.InnerText = "z3";
xe1.AppendChild(xesub3);
root.AppendChild(xe1);//添加到<bookstore>节点中
xmlDoc.Save("MyInfo.xml");
} //删除xml数据
private void button4_Click(object sender, RoutedEventArgs e)
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load("MyInfo.xml");
XmlNode xmlRoot = xmlDoc.SelectSingleNode("Root");
XmlNodeList xnl = xmlRoot.ChildNodes;
foreach (XmlNode xn in xnl)
{
XmlElement xe = (XmlElement)xn;
if (xe.GetAttribute("id") == "")
{
xmlRoot.RemoveChild(xn);
}
}
xmlDoc.Save("MyInfo.xml");
} //修改xml数据
private void button5_Click(object sender, RoutedEventArgs e)
{
} //显示xml数据
private void button6_Click(object sender, RoutedEventArgs e)
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load("MyInfo.xml");
XmlNode xn = xmlDoc.SelectSingleNode("Root");
XmlNodeList xnl = xn.ChildNodes;
string str = "";
string str1 = "";
string str2 = "";
foreach (XmlNode xnf in xnl)
{
XmlElement xe = (XmlElement)xnf;
XmlNodeList xnf1 = xe.ChildNodes;
str = xnf1[].InnerText;
str1 = xnf1[].InnerText;
str2 = xnf1[].InnerText;
MessageBox.Show("X:" + str + "\n" + "Y:" + str1 + "\n" + "Z:" + str2);
}
MessageBox.Show("X:" + str + "\n" + "Y:" + str1 + "\n" + "Z:"+str2);
}

原代码是在网上搜的,我按照自己想要的效果修修改改,至少使得自己能看的一目了然,快要下班赶紧上传上来,修改部分有空补上

WPF对于xml的简单操作(上)的更多相关文章

  1. WPF对于xml的简单操作(下下)插入节点并排序

    正如T所说,下下,这个方法不堪入目, ̄□ ̄|| 贴上再说 //先搞个struct声明 private struct datastruct { public string x; public strin ...

  2. WPF对于xml的简单操作(下)绑定ListView

    上个月做好的,电脑给盗了,没及时存在网盘,也及时发到随笔,于是乎悲哉!搞了一个上午终于绑定好了,有时候就是这么眼瞎,Path和XPath全瞎了,摸滚了一个上午,赶紧的随笔跟上先. <ListVi ...

  3. Linq对XML的简单操作

    前两章介绍了关于Linq创建.解析SOAP格式的XML,在实际运用中,可能会对xml进行一些其它的操作,比如基础的增删该查,而操作对象首先需要获取对象,针对于DOM操作来说,Linq确实方便了不少,如 ...

  4. XML系列之--对电文格式XML的简单操作(三)

    前两章介绍了关于Linq创建.解析SOAP格式的XML,在实际运用中,可能会对xml进行一些其它的操作,比如基础的增删该查,而操作对象首先需要获取对象,针对于DOM操作来说,Linq确实方便了不少,如 ...

  5. C# XML,XmlDocument简单操作实例

    private static string _Store = LocalPathHelper.CurrentSolutionPath + "/data/bookstore.xml" ...

  6. java代码用dom4j解析xml文件的简单操作

    时间: 2016/02/17 目标:为telenor的ALU Femto接口写一个采集xml文件并解析出locationName标签里的值,然后更新到数据库中. 从网上搜了下,有四种常用的解析xml的 ...

  7. github上创建java项目简单操作

    github上创建java项目简单操作 参考L: github上创建java项目简单操作 - CSDN博客http://blog.csdn.net/qq_29392425/article/detail ...

  8. XML文档操作之JAXP下实现

    JAXP是java API for xml PRocessing的缩写. 其API可以在javax.xml.parsers 这个包中找到.这个包向用户提供了两个最重要的工厂类,SAXParserFac ...

  9. 从0到1:使用Caliburn.Micro(WPF和MVVM)开发简单的计算器

    从0到1:使用Caliburn.Micro(WPF和MVVM)开发简单的计算器 之前时间一直在使用Caliburn.Micro这种应用了MVVM模式的WPF框架做开发,是时候总结一下了. Calibu ...

随机推荐

  1. Android菜鸟的成长笔记(2)——第一个Android应用

    原文:Android菜鸟的成长笔记(2)--第一个Android应用 上一篇:Android菜鸟的成长笔记(1)--Anddroid环境搭建从入门到精通 在上一篇Android菜鸟的成长笔记(1)中我 ...

  2. Android菜鸟的成长笔记(10)——使用Bundle在Activity之间传值

    原文:[置顶] Android菜鸟的成长笔记(10)——使用Bundle在Activity之间传值 前面我们了解了如何启动一个Activity,一个Activity在启动另外一个Activity的时候 ...

  3. 枚举算法总结 coming~^.*

    感谢CJ同学监督╭(╯^╰)╮.从放假到现在都木有更新博客了~噶呜~小娘谨记教诲,每天会更新博客==!! 看了一下POJ训练计划,虽然已经零零散散做了40多道题了,还是从头开始整理一下漏掉的知识点.T ...

  4. map标签的详细使用参数

    map标签必须成对出现,即 <map> ....</map> 同时map必须和area配合使用. img标签里的usermap属性值必须与map标签里的id和name值完全一致 ...

  5. CF 17B Hierarchy

    Nick's company employed n people. Now Nick needs to build a tree hierarchy of «supervisor-surbodinat ...

  6. 第二章排错的工具:调试器Windbg(上)

    感谢博主 http://book.51cto.com/art/200711/59731.htm <Windows用户态程序高效排错>第二章主要介绍用户态调试相关的知识和工具.本文主要讲了排 ...

  7. 初窥Linux 之 区分硬连接和软连接

    一.Linux下的两种连接文件及创建方式 在Linux下面的连接文件有两种——软连接和硬连接,虽然都是连接文件,但两者却有很大的区别.一种是类似于Windows的快捷方式功能的文件(或目录),这种连接 ...

  8. 访问项目时,不能自动加载index.php文件

    1.修改配置文件D:\lamp\apache\conf\httpd.conf加上DirectoryIndex index.hmtl index.php <IfModule !mpm_netwar ...

  9. Delphi XE中类成员的访问权限(新增了strict private和strict protected,还有automated)

    Delphi XE中类成员的访问权限共提供了6个关键词来用于限定访问权限:public.private.protected.published.automated strict private . s ...

  10. dwExStyle和dwStyle的说明(Delphi SDK窗口)

    dwExStyle: :指定窗口的扩展风格.该参数可以是下列值: WS_EX_ACCEPTFILES:指定以该风格创建的窗口接受一个拖拽文件. WS_EX_APPWINDOW:当窗口可见时,将一个顶层 ...