使用C#替换HTML属性

时间:2013-05-30 07:25:27

标签: c# html windows-store-apps

<img src="images/img2.jpg"   alt="Cinderella" title="" />

我正在获取图片 - &gt; “src”值&amp;得到图像&amp;转换为Base64字符串。 除此之外,我想用base64字符串值替换src(images / img2.jpg)的值。 但我找不到可行的方法。

这是我的总代码(获取图像“src”值和转换为字符串)

        XmlNodeList names = doc.GetElementsByTagName("img");
        for (uint j = 0; j < names.Length; j++)
        {
            XmlElement ele = (XmlElement)names.Item(j);
            var attri = ele.Attributes;
            var attrilist = attri.ToArray();
            //XmlElement name = names.ElementAt("src");
            for (int i = 0; i < attrilist.Length; i++)
            {

                if (attrilist[i].NodeName == "src")
                {
                    foreach (var itme in attrilist)
                    {
                        var srcval = attrilist.ToArray();
                        foreach (var srcvl in srcval)
                        {
                            var split = srcvl.NodeValue.ToString().Split('/');
                            StorageFile file = await appfolder.GetFileAsync(split.Last());
                           //converting image
                         }
                      }

我无法获取html文件中“src”位置的位置

需要任何帮助。

1 个答案:

答案 0 :(得分:0)

您不应该使用Xml api来解析html文档,尝试像Html Agility Pack这样的第三方库 http://htmlagilitypack.codeplex.com

HtmlDocument doc = HtmlDocument.Parse(htmlString);
doc.DocumentNode.SelectSingleNode("//img").Attributes["src"].Value;

就是这样!你可以用XPATH替换“// img”!