编码为国际性

时间:2016-04-25 05:51:07

标签: c# unicode character-encoding system.net.httpwebrequest

我正在制作Google建议API

我正在重新确认“¿cómoestás”这个应该归还的地方

  

¿cómoestás¿cómoestáshoy¿cómoestás含义¿cómoestástú¿cómoestásrandonadas¿cómoestásyo(1)¿cómoestásyo¿cómoestásresponse¿cómoestásinenglish

但它正在显示

  

[{“Phrase”:“comoestás”},{“Phrase”:“cómoestásen   inglés“},{”Phrase“:”comoestásemespanhol“},{”Phrase“:”cómoestás   lleva acento“},{”Phrase“:”cómoestástú“},{”Phrase“:”cómoestás   hola“},{”Phrase“:”como estas means“},{”Phrase“:”como estas   回复“},{”Phrase“:”como estas usted“},{”Phrase“:”como estas hoy“}]

,回复

enter image description here

忽略关键字。

你可以看到

  

¿

结果中缺少

我的代码是

System.Net.HttpWebRequest request = WebRequest.Create(Url) as HttpWebRequest;
request.ContentType = "text/html; charset=utf-8";
using (System.Net.HttpWebResponse response = request.GetResponse() as HttpWebResponse)
{
    StreamReader reader = new StreamReader(response.GetResponseStream(), System.Text.Encoding.GetEncoding("ISO-8859-2"));
    result = reader.ReadToEnd();
}

XDocument doc = XDocument.Parse(result);

if (!ReferenceEquals(doc.Descendants("suggestion"), null) && doc.Descendants("suggestion").Count() > 0)
{
    var suggestions = from suggestion in doc.Descendants("CompleteSuggestion") select new GoogleSuggestion { Phrase = suggestion.Element("suggestion").Attribute("data").Value };
    allSuggestions = suggestions.ToList();
}

请告知应使用哪种编码...

1 个答案:

答案 0 :(得分:0)

只要有人可以得到帮助..

我使用

解决了这个问题
 StreamReader reader = new StreamReader(response.GetResponseStream(), System.Text.Encoding.GetEncoding("ISO-8859-1"));