The project of U-WA-
http://uwa.potetihouse.com/
トップページ > 過去ログ > 記事閲覧
アイコン 【TKMP】日付の読み出しについて
日時: 2010/12/14 14:06
名前: ruhageshi

こんにちは、TKMP.DLLを使わせて頂いています。
TKMP.DLLでの日付の読み出しについて教えてください。

日付の行が
 Date: Sun, 3 Jul 2005 08:14:10 GMT
となっているemlファイルを読み込んだところ、
 西暦1年1月1日の00時00分
と解釈されました。

具体的には、Visual Basic 2010でのコード
Dim mr As New TKMP.Reader.MailReader("07600000.eml", False)
Dim DateStr As String = New TKMP.Reader.Header.DateTime(mr).Value.ToString("yyyy/MM/dd HH:mm")
に対して、
 DateStr = "0001/01/01 00:00"
となりました。

emlファイルの日付行の記載に不備があるのでしょうか。

よろしくお願い致します。

Page: 1 |

ファイル Re: 【TKMP】日付の読み出しについて ( No.1 )
日時: 2010/12/14 23:43
名前: Toki◆pRU.c9X.EOI

ヘッダのDate部分の記述としては
世界標準時ならば
Date: Sun, 3 Jul 2005 08:14:10 +0000
となっているのが理想です。
「GMT」と表示されているため正常に時刻が取得できていません。

TKMP.Reader.Header.DateTimeクラスでは
幾つかのパターンを登録してあるので
標準では扱わない記述でも解析できるのですが、
今回は該当しなかったようです。

この記述は特定のメーラーが扱うものなのでしょうか?
頻繁に使われるようならば対応するように検討したいと思います。

ファイル Re: 【TKMP】日付の読み出しについて ( No.2 )
日時: 2010/12/15 12:12
名前: ruhageshi

当該メールを受信したのはEudoraです。
(Eudoraはメールをmbox形式で保存しますが、Eclairにインポートした環境での現象であるため、
emlファイルを読み込んだ場合の質問になっています。)

Eudoraでの受信メールを調べると、当該メール以外は、以下の日付行形式でした。
 Date: Sat, 06 Nov 2010 14:27:57 +0000
 Date: Fri, 13 Nov 2009 09:16:19 +0000 (GMT)
 Date: Sat, 23 Oct 2010 04:18:17 +0000 (UTC)
 Date: Wed, 27 Nov 2002 17:09:21 +0900
 Date: Wed, 25 Feb 2004 08:14:16 +0900 (JST)
 Date: Sun, 21 Mar 2004 16:03:34 -0800 (PST)

従って、
 Date: Sun, 3 Jul 2005 08:14:10 GMT
という形式は、Eudoraが生成した訳ではなく、送信元(アマゾン)に原因があるようです。
他にこのような形式のメールを受けとっているかは定かではありませんが、
調査した限りは1通のみのようです。

なお、当該メールに対する各メーラの日付欄の表示は、
Eudora・Thunderbird・Eclair・Shurikenのいずれも、
2005年7月3日17時14分になっています。

Page: 1 |