HTMLファイルを取得してUNICODEへ変換 – プログラミング – Home

HTMLファイルを取得してUNICOD...
 
通知
すべてクリア

[解決済] HTMLファイルを取得してUNICODEへ変換


Tanioka
 Tanioka
(@Tanioka)
ゲスト
結合: 19年前
投稿: 2
Topic starter  

こんにちは。Tanioka と申します。

やりたいことはインターネットからHTMLファイルを取得してその文字列を
wchar_t の文字列(UNICODE)に変換してメモリ上に展開することです。
しかし取得したHTMLファイルの文字コードが何か分からないので文字コード
の変換ができなくて困っています。HTMLファイルの文字コードを簡単に
判定する方法はないでしょうか?

HTMLの取得は MFC の CHttpConnection を使っています。また文字コードの
変換は libapriconv を使っています。IE7でHTMLを保存すると charset=xxx
のような文字列が含まれていましたが、CHttpConnection で読み込むとこの
ような文字列は含まれませんでした。

以上、よろしくお願いします。


引用未解決
トピックタグ
PATIO
(@patio)
Famed Member
結合: 3年前
投稿: 2660
 

CHttpFile::QueryInfoにHTTP_QUERY_CONTENT_TYPEを指定すれば、
該当部分を含む物がえられると思いますけれど、
この部分に必ずcharsetの指定があるとは限りませんし、
この指定が無いようなホームページも結構ありますから
何処まで対応したいのかをきちんと決めないと難しいと思います。
少なくともcharsetの指定が無い場合に変換を諦めてしまうのか、
内部的に文字コードをスキャンして自動判定を行うのかを
決めないとだめでしょう。
ただ、文字コードの自動判定は結構面倒ですし、誤判定もありえる話なので
charsetを指定していないようなホームページを相手にする必要が無いのであれば、
あっさり諦めるのも手だと思います。


返信引用
Tanioka
 Tanioka
(@Tanioka)
ゲスト
結合: 19年前
投稿: 2
Topic starter  

PATIOさん、ありがとうございました。
問題は解決しました。charset がない場合はとりあえず ascii を
前提に変換するようにします。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました