最近プロジェクトに取り組んでいますが、その機能の 1 つは、URL アドレスに基づいて Web ページのソース コードを取得することです。 ASP.NET (C#) では、Web ページのソース コードを取得する方法がたくさんあるようですが、非常にシンプルで簡単な WebClient を作成しました。しかし、その後非常に厄介な問題が発生しました。それは漢字の文字化けでした。
注意深く調べた結果、中国語の Web ページは GB2312 と UTF-8 という 2 つのエンコーディングにすぎません。したがって、次のコードがあります。
リーリー少し説明すると、ここでは WebClient を使用して wc オブジェクトを作成しています (この名前は少し厄介です)。次に、wc オブジェクトの DownloadData メソッドを呼び出し、URL 値を渡し、バイト配列を返します。デフォルトでは、GB2312 を使用してこのバイト配列を読み取り、文字列に変換します。 Web ページのソース コードの文字列から、Web ページのエンコード形式の特徴的な文字を検索します。たとえば、charset="utf-8" などの情報を検索して、現在の Web ページのエンコード形式を決定します。
GetCharset 関数は、現在の Web ページのエンコード形式を取得するために使用されます。具体的なコードは次のとおりです。
リーリー
C# を使用して Web ページの HTML ソース コードを取得する例に関するその他の関連記事については、PHP 中国語 Web サイトに注目してください。