2014-01-19 71 views
0

對不起,我的英語不好。如何使用WebClient DownloadData獲取unicode字符串?

我試圖得到一個字符串的數據與此代碼:

WebClient wc = new WebClient(); 
byte[] buffer = wc.DownloadData("http://......); 
string xml = Encoding.UTF8.GetString(buffer); 
XmlDocument doc = new XmlDocument(); 
doc.LoadXml(xml); 

字符串具有Unicode數據。當我用Firefox這樣的瀏覽器得到這些時,每件事情都可以。

但在我的代碼中,字符串被破壞,xml文件無用。有些字符更改爲

十進制值,當讀取xml文件時,它們只是我們可以讀取的字符。和其他人

更改爲奇怪的跡象。

你知道我該怎麼辦?

+1

破了怎麼樣?你會得到什麼,你期望得到什麼? – Default

回答

1

把你的數據到一個流:

var stream = new MemoryStream(buffer); 

並與Load方法加載:

doc.Load(stream); 

這將試圖檢測正確的編碼。

或者也許WebClient.DownloadString也可以。

+0

非常感謝。 DownloadString工作。 –

相關問題