zoukankan      html  css  js  c++  java
  • C# XML创建解析、XML格式化

    导入命名空间:

    VS需要在项目中添加引用system.XML; 代码中添加 using System.XML和using System.IO;

     

    XML范例:

    <?xml version="1.0" encoding="UTF-8"?>
    
    <MSG>
    
      <HEADINFO>
    
        <TYPE>ValidFlight</TYPE>
    
      </HEADINFO>
    
      <ValidFlight>
    
        <Flight>
    
          <Runway>3</Runway>
    
          <Stand>27</Stand>
    
          <FlightID>436179</FlightID>
    
        </Flight>
    
        <Flight>
    
          <Runway>3</Runway>
    
          <FlightID>436180</FlightID>
    
        </Flight>
    
    </ValidFlight>
    
    </MSG>

    XML解析:

    方法一:

    XmlNode rootNode = XDoc.SelectSingleNode("/MSG/ValidFlight");
    
    foreach (XmlNode Xnode in rootNode.ChildNodes)
    {
            int FlightId = Convert.ToInt32(Xnode.SelectSingleNode("FlightID").InnerText);
    
            string RunWay = Xnode.SelectSingleNode("Runway") == null ? null : Xnode.SelectSingleNode("Runway").InnerText;
    
           string Stand = Xnode.SelectSingleNode("Stand") == null ? null : Xnode.SelectSingleNode("Stand").InnerText;
    }

    方法二:

    XmlNode nodelist= XDoc.SelectSingleNode("MSG/ValidFlight");
    
    foreach (XmlNode Xnode in nodelist)
    {
         int FlightId = Convert.ToInt32(Xnode["FlightID"].InnerText);
    
        string RunWay = Xnode["Runway"]== null ? null : Xnode.Xnode["Runway"].InnerText;
    
        string Stand = Xnode["Stand"] == null ? null :Xnode["Stand"].InnerText;
    }

    XML创建

    XmlDocument xmlDoc = new XmlDocument();
    
    //创建根节点
    
    xmlDoc.LoadXml("<?xml version = '1.0' encoding='UTF-8'?><MSG></MSG>");
    
    XmlElement root = xmlDoc.DocumentElement; 
    
    //创建一级节点
    
    XmlElement flight = xmlDoc.CreateElement("flight");
    
    //创建第二级节点
    
    XmlElement flightPlan = xmlDoc.CreateElement("flightPlan");
    
    XmlElement fpid = xmlDoc.CreateElement("fpid");
    
    fpid.InnerText = 32;
    
    flightPlan.AppendChild(fpid);
    
    //创建第二个节点
    
    XmlElement fpflag = xmlDoc.CreateElement("fpflag");
    fpflag.InnerText = 1;
    
    fpflag.SetAttribute("name","fpflag");
    
    flightPlan.AppendChild(fpflag);
    
    flight.AppendChild(flightPlan);
    
    root.AppendChild(flight);

    XML格式化

    private static string formatXml(XmlDocument xml)
    {
    XmlDocument xd = xml as XmlDocument;
    StringBuilder sb = new StringBuilder();
    StringWriter sw = new StringWriter(sb);
    XmlTextWriter xtw = null;
    try
    {
    xtw = new XmlTextWriter(sw);
    xtw.Formatting = Formatting.Indented;
    xtw.Indentation = 1;
    xtw.IndentChar = '	';
    xd.WriteTo(xtw);
    }
    finally
    {
    if (xtw == null)
    xtw.Close();
    }
    return sb.ToString();
    }

     

  • 相关阅读:
    自增自减
    字符串处理函数
    指针总结指向const的指针、const指针、指向const指针的const指针
    Jenkins基础篇 系列之-—04 节点配置
    soapUI系列之—-07 调用JIRA Rest API接口【例】
    测试人员转正考核方向
    linux系列之-—03 常见问题
    Jenkins基础篇 系列之-—03 配置用户和权限控制
    linux系列之-—01 shell编程笔记
    Jenkins基础篇 系列之-—02 修改Jenkins用户的密码
  • 原文地址:https://www.cnblogs.com/lcidy/p/8427657.html
Copyright © 2011-2022 走看看