0

xmlドキュメントをロードしたいのですが、:のような特別な記号があり、ąčęėįšųūエラーが発生しますInvalid character in the given encoding.質問は、xmlをロードする前にこの文字をエンコードする方法ですか?

// load xml result from Google weather
XDocument xd = XDocument.Load("http://www.google.com/ig/api?weather=vilnius&hl=ru");
4

2 に答える 2

3

これを試してみます

WebClient cln = new WebClient();
var str = cln.DownloadString("http://www.google.com/ig/api?weather=vilnius&hl=ru");
XDocument xDoc = XDocument.Load(new StringReader(str));
于 2012-05-04T21:26:12.447 に答える
1
using (StreamReader sr = new StreamReader("http://www.google.com/ig/api?weather=vilnius&hl=ru", true))
{
    XDocument xdoc = XDocument.Load(sr);
}

問題はエンコーディングにあります。StreamReaderを使用する場合は、応答がどのエンコーディングであるかを検出してから、XDocument.Loadを呼び出せるようにする必要があります。

于 2012-05-04T21:20:04.897 に答える