【问题标题】:Rename an attribute of html file in c#在c#中重命名html文件的属性
【发布时间】:2012-08-27 07:31:47
【问题描述】:

我在一个字符串变量中有一个HTML,其中包含一些<img> 标签。我想将src 属性替换为data-realsrc 属性并将loading.gif 放入src 属性中。

例如,如果这是<img> 标签之一:

<img src="Hello.jpg" />

我想改成:

<img data-realsrc="Hello.jpg" src="loading.gif" />

它应该应用于HTML内的所有&lt;img&gt;标签。

请注意,我想在服务器端使用 c#

怎么做?

最简单的方法是什么?最快的方法是什么?

【问题讨论】:

  • 你试过String.Replace吗?
  • @AVD 页面中应该有很多src=s。 (例如:&lt;script src=...)也可能是src = 和...

标签: c# .net html-parsing


【解决方案1】:

使用HtmlAgilityPack

HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(@"<img src=""Hello.jpg"" />");

foreach (var img in doc.DocumentNode.Descendants("img"))
{
    var realSource = img.Attributes["data-realsrc"];

    if (realSource != null)
        realSource.Value = img.Attributes["src"].Value;
    else
        img.Attributes.Add("data-realsrc", img.Attributes["src"].Value);

    img.Attributes["src"].Value = "loading.gif";
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-01
    • 1970-01-01
    • 2011-03-14
    相关资源
    最近更新 更多