2012-04-22 4 views
1

私はHTMLアジリティパックを使用して私のWindowsの電話アプリのためにこのウェブサイトを解析しています。Html agility pack parsingウェブサイトのエンコーディングiso-8859-1本当にANNOYING

まず、webclientクラスを使用してダウンロードし、その結果をHtmlDocumentに渡します。 (AO)

あり、ISO-8859-1エンコーディングでいくつかの問題だったが、htmlentity.DeEntitizeは... & Oumlと& aumlとして

を手紙ÖAが示すの問題を解決しかし、文書はまだいくつかのスカンジナビアの文字を持っていますいくつかのランダムなエンコーディング(これは:showedとして示されています)。

これらの文字は完全にクロムを使用しています。

サイトは次のとおりです。http://reittiopas.tampere.fi/mobile/fi/

+0

あなたが提供したURLを試してみましたが、「 」の文字が見えません – Alex

+0

Alexは、ブラウザがそれらを修正したために文字を表示しません(Windows Phone、 t!) –

答えて

0

のWindows Phoneのみのエンコーディングの小さなセットをサポートし、ISO-8859-1は、それらの一つではありません!

これを解決するには、Silverlight Encoding Generatorでエンコードハンドラを作成し、テキストを変換してから、今のところHTMLアジリティパックを使用してください。

+0

感謝ペドロ、私はこれをチェックします! DownloadStringAsyncの文字列を使用してもよろしいですか、またはwebclientからストリームが必要ですか?なぜWindowsの携帯電話のブラウザがそのサイトを適切に処理するのか説明できますか? – onnimonni

+0

Windows Phoneブラウザはiso-8859-1でエンコードされたサイトを扱いますが、Windows Phone SDKではサポートされていません。そのため、DownloadStringAsyncはデータをUTF-8に変換しますSDK)ので、それらの奇妙な文字でそれを参照してください。ストリームと一緒にバイト配列を取得し、最後にSilverlightエンコーディングジェネレータを使用して取得するエンコーディングクラスを使用して変換します。 –

+0

それは今作動する!!!! :)ありがとう! – onnimonni

関連する問題