2012-02-22 105 views
0

我的問題是,我想更改某些電子郵件的HTML中的某些src值。所有這些都已經完成了,我使用EWS api來建立連接,並使用html敏捷包進行解析。任何人都知道如何通過我對圖像中的src值所做的更改來獲取html?保存html更改

public static string parsearHtml(string body,Item item, ArrayList contentIDS, ArrayList urls) 
    { 
     string SRC = ""; 
     int indice = 0; 
     string retorno = ""; 
     //Console.WriteLine(body); 

     HtmlDocument email = new HtmlDocument(); 
     email.LoadHtml(body); 

     foreach (HtmlNode img in email.DocumentNode.SelectNodes("//img")) 
     { 
      SRC = img.GetAttributeValue("src", null); 
      for (int i = 0; i < contentIDS.Count; i++) 
      { 
       if (SRC.Equals(contentIDS[i].ToString())) 
       { 
        indice = i; 
        break; 
       } 
      } 

      img.SetAttributeValue("src", urls[indice].ToString()); 
      Console.WriteLine(img.GetAttributeValue("src", null));//in here i get the the attribute and its change so the changing of src values is working 
      //i tried email.save(retorno) but got error for empty path 
      //so i tried email.save(body) but got error for illegar characters in path 
     } 

     return retorno; 

    } 

回答

0

你可以得到整個HTML串

email.DocumentNode.OuterHtml 

類似的問題回答在HTML Agility Pack HtmlDocument Show All Html?

+0

THX但隨着內存流周圍工作,它烏拉圭回合後反正感謝。順便說一句,有任何想法如何在HTML中獲取外部圖像。知道我只是用附件做了解決方法。有任何想法如何獲取參考圖像,並將其轉換爲C#中的字節數組或圖像對象? – rdk1992 2012-02-22 15:01:11

+0

上午使用htmlagilitypack,我知道如何獲得圖像的src值,但我如何獲取和存儲該物理image.dont要存儲在磁盤中。就像存儲在字節數組中的附件一樣。 – rdk1992 2012-02-22 15:02:05

+0

要將圖像下載到字節數組,可以使用WebClient類。 http://geekswithblogs.net/whiletrue/archive/2010/03/11/c-image-download.aspx有一個簡單的例子 – arunes 2012-02-22 19:10:20