LHA Library for Java | |
Prev Package | Next Package | Frames | No Frames |
Class Summary | |
MsdosDate | MS-DOS形式の時間情報を扱うDateの派生クラス。 データは 4byte値であり、MS-DOSが 主にIntel の x86系CPU上で 動作したことから LittleEndianで格納される。 フォーマットは以下のとおり。 +---------------+---------------++---------------+---------------+ | 日付-上位byte | 日付-下位byte || 時刻-上位byte | 時刻-下位byte | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |7|6|5|4|3|2|1|0|7|6|5|4|3|2|1|0||7|6|5|4|3|2|1|0|7|6|5|4|3|2|1|0| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 年-7bit |月-4bit| 日-5bit ||時間-5bit| 分-6bit | 秒-5bit | +-------------+-------+---------++---------+-----------+---------+・年は 1980〜2107年 を 0〜127 で表す。WindowsのシステムAPIの 一部は 2099年までしかサポートしないという情報がある。 ・月は 1〜12月 を 1〜12で表す。0〜11でないことに注意。 ・日は 1〜31日 を 1〜31で表す。0〜30でないことに注意。 ・時間は 0〜23時 を 0〜23で表す。 ・分は 0〜59分 を 0〜59で表す。 ・秒は 0〜58秒 を 0〜29で表す。秒の情報はビット数が足りない ため 最小単位は 1秒でなく 2秒である。 -- revision history -- $Log: MsdosDate.java,v $ Revision 1.1 2002/12/05 00:00:00 dangan [maintenance] javadoc コメントのスペルミスを修正。 ソース整備 Revision 1.0 2002/07/24 00:00:00 dangan add to version control [bug fix] setTime() で ftimeの限界精度である2秒以上の精度で記録していた。 [maintenance] タブの廃止 ライセンス文の修正 |
WindowsDate | WindowsのFILETIME形式の情報を扱うDateの派生クラス。 FILETIME は 1601年 1月 1日 0時0分0秒からの経過時間を 100ナノ秒単位で持つ64ビット値。 このクラスでは FILETIME を long(64ビット値)として扱うときは 基本的に符号無しとみなす。 1601年 1月 1日 0時0分0秒以前の時間を扱いたい場合は WindowsDate( Date date ) か、WindowsDate.setTime( long time )を使用する。 -- revision history -- $Log: WindowsDate.java,v $ Revision 1.1 2002/12/05 00:00:00 dangan [maintenance] javadoc コメントのスペルミスを修正。 ソース整備 Revision 1.0 2002/08/05 00:00:00 dangan add to version control [bug fix] set系メソッドで 範囲外の時間をセットしようとして 例外を投げるケースで時間の書き戻しが正しく行われていなかった。 checkRange の時間の範囲が間違っていた。 [maintenance] タブの廃止 ライセンス文の修正 |