• ベストアンサー

htmlソースを解析、日本語部分がよくわからない

htmlソースを解析しようと思ったのですが、日本語部分がバイト表現のようなものになっています。 (thunderbirdでソースを見ています) 例えばメールでは「注文内容」となっている部分はhtmlソースでは以下のようになっています。 =E6=B3=A8=E6=96=87=E5=86=85=E5=AE=B9=EF=BC=9A ヘッダの文字コードはutf-8になっていました。 このバイト表現はどのような文字コードなのでしょうか? またPHPやVBA、C#などで日本語への変換は可能でしょうか? どうぞよろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.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でしたら、ヘッダーを表示でエンコードされた物が表示されます。

suffre
質問者

お礼

ありがとうございます! Perlの方法を参考にしてみます。

その他の回答 (2)

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.2
suffre
質問者

お礼

ありがとうございます! どちらも参考にさせて頂きます。

回答No.1

なんでわざわざ「メール」を対象にしたのか分からんけど(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エンコード/デコードと同じ変換。

suffre
質問者

お礼

ありがとうございます! それでわかりました。 なかなか検索しても調べ方がわからなかったので助かりました!

関連するQ&A