- ベストアンサー
htmlソースを解析、日本語部分がよくわからない
htmlソースを解析しようと思ったのですが、日本語部分がバイト表現のようなものになっています。 (thunderbirdでソースを見ています) 例えばメールでは「注文内容」となっている部分はhtmlソースでは以下のようになっています。 =E6=B3=A8=E6=96=87=E5=86=85=E5=AE=B9=EF=BC=9A ヘッダの文字コードはutf-8になっていました。 このバイト表現はどのような文字コードなのでしょうか? またPHPやVBA、C#などで日本語への変換は可能でしょうか? どうぞよろしくお願い致します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
htmlソースじゃない(頭文字だから、HTMLと言う問題ではない) メールソースを解析ですね。 他のネットワーク通信と同様に、送受信されるデータは、headerと呼ばれる部分と、改行コードをひとつ挟んでbody部分になっています。 HTTPプロトコル(手続き)でも、mailプロトコルでも、ftpでも同じです。 mailはとても古くからある通信プロトコルですから、メールを転送するサーバーのシステムは古いものが介在するという前提です。 ascii文字とか送れないために、エンコードされています。 ここに、Perlを使っての方法が、とても詳しく説明されています。 ⇒Base64エンコード・デコードする( http://www.din.or.jp/~ohzaki/perl.htm#JP_Base64 ) 通常はMUA(Mail User Agent)がよきに取り計らってくれます。Thunderbirdでしたら、ヘッダーを表示でエンコードされた物が表示されます。
その他の回答 (2)
- kmee
- ベストアンサー率55% (1857/3366)
http://ja.wikipedia.org/wiki/Quoted-printable あとは http://ja.wikipedia.org/wiki/Multipurpose_Internet_Mail_Extensions も必要になってくるでしょう
お礼
ありがとうございます! どちらも参考にさせて頂きます。
- play_with_you
- ベストアンサー率37% (112/301)
なんでわざわざ「メール」を対象にしたのか分からんけど(WEBサイトのHTMLと違い今回のようにいろいろ面倒)、とりあえず =E6=B3=A8=E6=96=87=E5=86=85=E5=AE=B9=EF=BC=9A ↓ %E6%B3%A8%E6%96%87%E5%86%85%E5%AE%B9%EF%BC%9A ↓ https://www.google.com/search?&q=%E6%B3%A8%E6%96%87%E5%86%85%E5%AE%B9%EF%BC%9A これで分かったと思います。 要するにURLエンコード/デコードと同じ変換。
お礼
ありがとうございます! それでわかりました。 なかなか検索しても調べ方がわからなかったので助かりました!
お礼
ありがとうございます! Perlの方法を参考にしてみます。