【问题标题】:How can i read the text inside the node of an example in C#?如何在 C# 中读取示例节点内的文本?
【发布时间】:2011-07-21 12:15:40
【问题描述】:

这是我要读取的 XML。

<Server ServerName="SP-SWD-T01">
    Some nodes are there 
</Server>

我想读取服务器内部的ServerName,我该如何读取它。请帮忙。

这是代码

XmlReaderSettings readerSettings = new XmlReaderSettings();
            readerSettings.IgnoreComments = false;
            XmlReader xmlRdr = XmlReader.Create(strFilePath, readerSettings);
            // Parse the file
            while (xmlRdr.Read())
            {
                switch (xmlRdr.NodeType)
                {
                    case XmlNodeType.Element:
                        // You may need to capture the last element to provide a context
                        // for any comments you come across... so copy xmlRdr.Name, etc.
                        break;
                    case XmlNodeType.Comment:
                        MessageBox.Show(xmlRdr.Name);
                        break;

                    case XmlNodeType.Text: //Display the text in each element.
                        //Console.WriteLine(reader.Value);
                        break;
                    case XmlNodeType.EndElement: //Display the end of the element.
                        //Console.Write("</" + reader.Name);
                        //Console.WriteLine(">");
                        break;
                }
            }

谢谢

【问题讨论】:

  • xml 标签中没有*
  • 我会使用 XMLReader。为什么您的 XML 在元素名称前包含两个“”,在元素值后包含两个“”?
  • 其实我已经加了星星来显示我想读的我想读的服务器名有没有办法读它

标签: c# xml parsing xml-parsing


【解决方案1】:

试试这个

String xml = @"<Server ServerName=""SP-SWD-T01"">Some nodes are there</Server>";
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
String servername = doc.SelectSingleNode("/Server").Attributes["ServerName"].Value;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-02
    • 1970-01-01
    • 2015-04-15
    相关资源
    最近更新 更多