メールのサブジェクトを呼び出したい。


まな  2005-02-20 01:45:16  No: 119812

えっと、メールの受信プログラムをVB6で作ってます。
そこで、わからなくなっちゃったんですが、メールのヘッダの
件名の部分に下記のように書いてありました。
Subject: PlayStation.com =?ISO-2022-JP?B?GyRCJGgkaiEnGyhC?= PS2
 =?ISO-2022-JP?B?GyRCIVglJCE8JTkbKEI=?= - =?ISO-2022-JP?B?GyRCJUobKEI=?=
 =?ISO-2022-JP?B?GyRCJVQlNyVlJUYlYCROUjobKEI=?= -
 =?ISO-2022-JP?B?GyRCREw+b0hHGyhC?= (=?ISO-2022-JP?B?GyRCPWkycxsoQg==?=
 =?ISO-2022-JP?B?GyRCQDg7OkhHGyhC?=) =?ISO-2022-JP?B?GyRCIVlGQ0A9GyhC?=
 CD =?ISO-2022-JP?B?GyRCRjE6LRsoQg==?= 
これを、日本人が読めるようにするにはどうしたらよいのでしょうか?@@
ISO-2022-JP???BASE64???
さっぱりですε-(ーдー)ハァ


ガッ  2005-02-20 02:13:20  No: 119813

とりあえず、文字コード
http://www.google.co.jp/search?hl=ja&q=ISO-2022-JP&lr=

で、参考になるか分からないけど、メールヘッダのフォーマット
http://www.google.co.jp/search?hl=ja&q=%E3%83%A1%E3%83%BC%E3%83%AB%E3%83%98%E3%83%83%E3%83%80%E3%80%80%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%83%E3%83%88&lr=


まな  2005-02-21 18:32:28  No: 119814

返信ありがとうございます。
=?ISO-2022-JP?B?GyRCJGgkaiEnGyhC?=
この部分でいう文字のコードは
ISO-2022-JPでBASE64で書かれているってことはわかるんです。
ただデータ部の「GyRCJGgkaiEnGyhC」をどうやってデコードするのかがよくわかりません。いろいろググってみましたが、.NETでのデコード方法は書いてあってもVB6での方法が書いてありません。
宜しくお願いしますm(_ _)m


特攻隊長まるるう  2005-02-21 19:13:50  No: 119815

>いろいろググってみましたが、.NETでのデコード方法は書いてあってもVB6での方法が書いてありません。
そぉ?
http://www.google.co.jp/search?hl=ja&c2coff=1&q=VB6+%E5%A4%89%E6%8F%9B%E3%80%80ISO-2022-JP&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=


まな  2005-02-23 00:30:49  No: 119816

全く同じ検索フレーズで探しました。その他のフレーズも…
某UsersGroupページのも見ました。あれではよくわかりません;;
だからここに書いたんです..............( _ _)σ イジイジ
無知ですみませんm(_ _)m


Dental  2005-02-23 01:00:19  No: 119817

漠然すぎます。どのURLを参考にして、その中のどのフレーズが
理解できなかったのかを、もっと明確にしてください。
(わからない単語や、理解できないコードなどを具体的に示してください)

そちらの理解度を示してもらわないと、せっかくURLを提示したり、
説明文を並び立てても、「やっぱりわかりません」という一言で
片付けられてしまいそうで、答えるのを躊躇ってしまいます。

> 件名の部分に下記のように書いてありました。
PlayStation.com より: PS2 『イース - ナピシュテムの匣 - 通常版 (初回生産版) 』特製 CD 同梱


魔界の仮面弁士  2005-02-23 01:54:06  No: 119818

まず、Subjectなどの『=?ISO-2022-JP?B?GyRCJGgkaiEnGyhC?=』とは、
  『=?(文字コード)?(エンコード方法)?(データ)?=』
という形式をとっています。

この点までは理解されていますでしょうか?

そして、今回の文字コードは、"ISO-2022-JP"という物です。
VB6からは ADODB.Stream などを使って、文字列を
ISO-2022-JPのバイナリに変換したり、あるいは逆に
ISO-2022-JPのバイナリを文字列に戻したりできます。

続く "B" は、『BASE64』という形式にて、バイナリを
テキストデータに変換しているという意味です。

『BASE64』の変換規則については、下記を見てください。
http://www.sea-bird.org/doc/Cygwin/BASE64enc.html
http://www.kumei.ne.jp/c_lang/sdk3/sdk_235.htm

これを踏まえて、元のデータを見てみましょう。

まず、
  『=?ISO-2022-JP?B?GyRCJGgkaiEnGyhC?=』
のデータ部 "GyRCJGgkaiEnGyhC" は、
BASE64にてデコード(復元)すると、
  1B 24 42 24 68 24 6A 21 27 1B 28 42
という、12バイトのバイナリになります。

このバイナリを、ISO-2022-JP形式とみなして文字列にすると、
  『より:』
という 3文字 になるというわけです。

あとはこれらを、頑張って VB6 のコードに置き換えてみてください。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加