【问题标题】:read a closed tag from xml in C#从 C# 中的 xml 读取封闭标签
【发布时间】:2014-05-21 08:48:00
【问题描述】:

我已经做了一些从 xml 文件中读取的东西,它一切正常。 但有一件事是行不通的。

这是可以正常工作的 xml 部分

<title>lorum ipsum lorum ipsum</title>

这是我要阅读的xml部分:

 <enclosure url="http://media.nu.nl/m/m1nxf1eaa6mh_sqr256.jpg" type="image/jpeg" />

我只想要变量中的 url。

这就是我目前所拥有的:

switch (node.Name)
                {
                    case "title": label5.Text = (node.InnerText); break;
                    case "enclosure": string picbox2 = (node.InnerText); break;
                        pictureBox2.ImageLocation = picbox2;
                    case "description": label6.Text = (node.InnerText); i++; break;

                }

我希望我提供了足够的信息。

【问题讨论】:

  • 那些被称为属性。搜索在 C# 中读取 XML 节点属性,您会顺利进行。
  • 注意break的位置,为什么显示的代码会导致编译器错误..

标签: c# xml


【解决方案1】:

在“enclosure”案例下,您有一个赋值语句:pictureBox2.ImageLocation = picbox2; 在 case 的 break; 语句之后。我不希望它编译。

您还需要以element.Attributes["attr_name"].Value 的形式访问元素属性,而不是使用 InnerText 属性,该属性将返回开始和结束元素标记之间的文本。

switch (node.Name)
{
    case "title": 
        label5.Text = (node.InnerText); 
        break;
    case "enclosure": 
        string picbox2 = (node.Attributes["url"].Value); 
        pictureBox2.ImageLocation = picbox2;
        break;
    case "description": 
        label6.Text = (node.InnerText); 
        i++; 
        break;

}

【讨论】:

    猜你喜欢
    • 2015-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-10
    • 1970-01-01
    • 2016-12-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多