zoukankan      html  css  js  c++  java
  • c# 操作xml

    项目要求用xml保存条目数据。

    string str = “<root><listitem id="”11"”><no>1ff1</no><title>title</title><miji>miji</miji><author>author</author></listitem><listitem id="”1"”><no>1221</no><title>title</title><miji>miji</miji><author>hahahhahahah</author></listitem><listitem id="”2"”><no>ddd</no><title>title</title><miji>ddd</miji><author>author_daiqianjie</author></listitem></root>”;

    构造xml

    XmlDocument doc = new XmlDocument();
    doc.LoadXml(str);

    新增一个节点

    /*
    XmlNode root = doc.SelectSingleNode(”root”);
    XmlElement ele = doc.CreateElement(”listitem”);
    ele.SetAttribute(”id”,”3″);
    XmlElement subEle = doc.CreateElement(”no”);
    subEle.InnerText = “ddd”;
    ele.AppendChild(subEle);
    subEle = doc.CreateElement(”title”);
    subEle.InnerText = “title”;
    ele.AppendChild(subEle);
    subEle = doc.CreateElement(”miji”);
    subEle.InnerText = “ddd”;
    ele.AppendChild(subEle);
    subEle = doc.CreateElement(”author”);
    subEle.InnerText = “author_daiqianjie”;
    ele.AppendChild(subEle);
    root.AppendChild(ele);

    w(doc.InnerXml);
    */

    删除一个节点

    foreach (XmlNode node in doc.SelectNodes(”root/listitem”))
    {
    if (node.Attributes["id"].Value == “11″)
    doc.SelectSingleNode(”root”).RemoveChild(node);
    }
    w(doc.InnerXml);

    用xpath选择一个节点并输出值

    //XmlNode node = doc.SelectSingleNode(”root/listitem[@id='2']“);
    //w(node.SelectSingleNode(”author”).InnerText);

    表格化显示xml

    private string showXml(string str)
    {
    try
    {
    string r = “”;
    if (str != “”)
    {
    XmlDocument doc = new XmlDocument();
    doc.LoadXml(str);
    XmlNode root = doc.SelectSingleNode(”root”);

    r += “<table width="”100%"” style=’border-bottom: 1px dotted #666666′>"n”;
    r += “<tr style=’font-weight:bold;background-color:#E5F0FF;’>"n”;
    r += “<td>档号</td>"n”;
    r += “<td>题名</td>"n”;
    r += “<td>密级</td>"n”;
    r += “<td>责任者</td>"n”;
    r += “</tr>"n”;
    foreach (XmlNode node in root.ChildNodes)
    {
    r += “<tr>"n”;
    r += “<td nowrap>” + node.SelectSingleNode(”no”).InnerText + “</td>"n”;
    r += “<td nowrap>” + node.SelectSingleNode(”title”).InnerText + “</td>"n”;
    r += “<td nowrap>” + node.SelectSingleNode(”miji”).InnerText + “</td>"n”;
    r += “<td nowrap>” + node.SelectSingleNode(”author”).InnerText + “</td>"n”;
    r += “</tr>"n”;
    }
    r += “</table>"n”;
    }
    return r;
    }
    catch (Exception ex)
    {
    logs(ex.ToString());
    return “”;
    }
    }

  • 相关阅读:
    Python pydoc.py
    Python dir
    HTTPS Web配置举例
    Kubernetes 笔记 03 扫清概念
    一文总结 Linux 虚拟网络设备 eth, tap/tun, veth-pair
    一文掌握 Linux 性能分析之内存篇
    云计算底层技术之高性能集群
    利用 Linux tap/tun 虚拟设备写一个 ICMP echo 程序
    Linux 网络工具详解之 ip tuntap 和 tunctl 创建 tap/tun 设备
    [原创] 详解云计算网络底层技术——虚拟网络设备 tap/tun 原理解析
  • 原文地址:https://www.cnblogs.com/liuzhengdao/p/1312773.html
Copyright © 2011-2022 走看看