DATEの形式についてNo.38737
hirahira さん 10/07/01 10:09
 
いつもお世話になっております。

メールを保存する自作マクロを使用しております。

その中で、DATEの形式から保存フォルダを自動作成しているのですが、

本日受領したメールの中に、DATE形式の違うものがあり、

これが原因で誤動作しました。

これまでのDATE形式 Thu, 1 Jul 2010 08:07:42 +0900

今日誤動作した形式 1 Jul 2010 09:28:00 +0900

この形式の違いは、何が原因で発生するのでしょうか。

OS : XP Pro SP3版
IME : ATOK2008
Browser : Chorome plus
Hidemaru Mail : 5.39 beta11
秀丸エディタ : 8.01 beta7

[ ]
RE:38737 DATEの形式についてNo.38738
たまちゃん3 さん 10/07/01 10:25
 
>今日誤動作した形式 1 Jul 2010 09:28:00 +0900

のメールが

http://tools.ietf.org/html/rfc5322#section-3.3

に準拠していないからだと思います。

[ ]
RE:38737 DATEの形式についてNo.38740
秀まるお2 さん 10/07/01 10:53
 
 たまちゃん3さんの話と重なりますが、Date:ヘッダというのは送ってくる側
のメールソフトが生成する物なので、もしその内容がおかしいとしたら、送って
くる側のメールソフトがおかしいのだと思います。

 メールのヘッダの中にX-Mailer:ヘッダとかあれば、具体的にどういうメール
ソフトで送ってるのか分かります。

 ちなみにですが、Date:ヘッダがおかしいメールは世の中に多数あります。特
に迷惑メールの類ではおかしい物が多数あります。秀丸メールでは、ある程度お
かしいDate:ヘッダでもなんとか解釈するようにはしてるので、例えばDate:ヘッ
ダがある程度おかしくてもうまく解釈するようなマクロを作りたいということな
ら、秀丸メールのtkinfo.dll関数を使ってうまく処理したらいいんじゃないかと
思います。

 具体的には、

   $date = dllfuncstr("CurrentHeader", "Date:");

 とかやった後に、その文字列を、例えば

   $date = dllfuncstr("FormatDate", $date, "EW, D EM YYYY hh:mm:ss");

 とかすれば、正しい形式に変換されると思います。

[ ]
RE:38740 DATEの形式についてNo.38741
hirahira さん 10/07/01 11:00
 
たまちゃん3さん、秀まるお2さん、ご丁寧にありがとうございます。

メールを送付してくる相手先に依存するのですね。

秀まるお2さんに教えて頂いた以下の作戦で、

対応を検討してみたいと思います。

ありがとうございました。


>   $date = dllfuncstr("FormatDate", $date, "EW, D EM YYYY hh:mm:ss");
>
> とかすれば、正しい形式に変換されると思います。

[ ]