【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ファイルの日付行の記載に不備があるのでしょうか。
よろしくお願い致します。
|
|
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分になっています。
|
|
|