|
LHA Library for Java | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.util.Date
jp.gr.java_conf.dangan.util.MsdosDate
public class 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年までしかサポートしないという情報がある。
-- 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] タブの廃止 ライセンス文の修正
Constructor Summary | |
---|---|
MsdosDate(java.util.Date date)
date で示される時間を表す MsdosDate を構築する。 MS-DOS 形式の時間情報で表せない細かい精度の情報は 無視され、最小時間単位は java.util.Date の 1ミリ秒でなく MS-DOS 形式の時間情報 の最小単位である 2秒となる。 |
|
MsdosDate(int time)
MS-DOS 形式の時間情報から 新しい MsdosDate を構築 する。 |
Method Summary | |
---|---|
java.lang.Object |
clone()
このオブジェクトのコピーを返す。 |
int |
getMsdosTime()
この MsdosDateが示す時間情報を MS-DOS 時間形式で得る。 |
void |
setMsdosTime(int time)
この MsdosDate に MS-DOS 時間形式の時間情報を設定する。 |
void |
setTime(long time)
この MsdosDate の示す時間を 1970年1月1日 00:00:00 GMTから time ミリ秒経過した時刻に設定する。 MS-DOS 形式の時間情報で表せない細かい精度の情報は 無視され、最小時間単位は java.util.Date の 1ミリ秒でなく MS-DOS 形式の時間情報 の最小単位である 2秒となる。 |
void |
setYear(int year)
Deprecated. |
Methods inherited from class java.util.Date |
---|
after, before, compareTo, equals, getDate, getDay, getHours, getMinutes, getMonth, getSeconds, getTime, getTimezoneOffset, getYear, hashCode, parse, setDate, setHours, setMinutes, setMonth, setSeconds, toGMTString, toLocaleString, toString, UTC |
Methods inherited from class java.lang.Object |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public MsdosDate(java.util.Date date)
date
- 新しく構築される MsdosDate の基になる時間情報
を持つ Dateオブジェクト
java.lang.IllegalArgumentException
- date が MS-DOS時間形式で扱えない範囲の時間を
示していた場合public MsdosDate(int time)
time
- MS-DOS 形式の時間情報Method Detail |
---|
public java.lang.Object clone()
clone
in class java.util.Date
public void setYear(int year)
setYear
in class java.util.Date
year
- 1900を足すことで西暦を表すような 年の値
java.lang.IllegalArgumentException
- year が MS-DOS時間形式で扱えない範囲の時間を
示していた場合public void setTime(long time)
setTime
in class java.util.Date
time
- 1970年1月1日 00:00:00GMT からの経過ミリ秒
java.lang.IllegalArgumentException
- time が MS-DOS時間形式で扱えない範囲の時間を
示していた場合public void setMsdosTime(int time)
time
- MS-DOS 時間形式の時間情報public int getMsdosTime()
|
LHA Library for Java | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |