2014-03-05 120 views
0

我遇到希臘字符問題。我瀏覽到一個帶有文本框的網頁&轉到按鈕,我以編程方式在文本框中輸入一個數字,然後以編程方式單擊「轉到」按鈕。然後我從網頁上獲取HTML。這些有一些希臘字符。這是我寫的代碼。希臘字符從網頁

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(mainURL); 
request.Headers.Set(HttpRequestHeader.AcceptLanguage, "en-US"); 
request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)"; 
request.Timeout = 100000; 
request.ContentType = "charset=iso-8859-7;windows-1253;charset=iso-8859-8;windows-1254;"; 
WebClient wc = new WebClient(); 
WebBrowser b = new WebBrowser(); 
wc.Encoding = Encoding.UTF8; 
try 
{ 
    b.Navigate(mainURL); 
    while (b.ReadyState != WebBrowserReadyState.Complete) 
    { 
     Application.DoEvents(); 
    } 
string searchNum="10002"; 
HtmlElement userName = b.Document.GetElementById("ctl00$cphMyMasterCentral$ucSearch$txtNumber"); 
userName.SetAttribute("value", searchNum); 
userName.RemoveFocus(); 
b.Document.GetElementById("ctl00_cphMyMasterCentral_ucSearch_lbtnSearch").InvokeMember("click"); 
string url = "https://www.example.com"; 
html = wc.DownloadString(url); 
html = HttpUtility.HtmlDecode(html); 

在網頁上,當我沒有以編程方式做這個輸出。

Name      Reg. Number Type   NameStatus OrgStatus 
ΑΔΑΜΟΣ ΓΑΒΡΙΗΛΙΔΗΣ & ΣΙΑ Σ 10002 Partnership  Current Name Active 

但是,當我做到這一點編程我得到這個

Name      Reg. Number Type   NameStatus OrgStatus 
αδα??Σ Γα?????? δ?Σ & Σ?α Σ 10002 Partnership  Current Name Active 

我如何保存它,因爲它是在原來的網頁(eg.ΑΔΑΜΟΣΓΑΒΡΙΗΛΙΔΗΣ&ΣΙΑ)所示?

+0

你試過Encoding.Unicode? – Steve

+1

設置你的頁面編碼爲UTF-8,並嘗試從數據庫獲取數據使用N'FOO' – Maysam

+0

@Maysam,我不知道什麼是N'FOO'。你能詳細說明嗎? – Rashmi

回答

1

更改爲varchar在數據庫表nvarchar和更改頁面編碼爲UTF-8

0

如果你確信是搞亂你的代碼的JavaScript,和你的數據庫和網頁本身被設置爲UTF8 thenm如果我記得很清楚,你需要使用十六進制字符的希臘字母 See this page

κουράγιο

+0

你不記得了... –