|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object javax.xml.datatype.XMLGregorianCalendar
public abstract class XMLGregorianCalendar
W3C XML Schema 1.0 日時データ型の表現です。特にこれらの日時データ型は、XML 名前空間 "http://www.w3.org/2001/XMLSchema"
に定義されている DatatypeConstants.DATETIME
、DatatypeConstants.TIME
、DatatypeConstants.DATE
、DatatypeConstants.GYEARMONTH
、DatatypeConstants.GMONTHDAY
、DatatypeConstants.GYEAR
、DatatypeConstants.GMONTH
、または DatatypeConstants.GDAY
のうち、いずれか 1 つの定数です。これらのデータ型は標準として 「W3C XML Schema 1.0 Part 2」のセクション 3.2.7 〜 3.2.14 に定義されています。
下の表に、XML Schema 1.0 の日時データ型フィールドとこのクラスのフィールドの対応づけを定義します。さらに、「W3C XML Schema 1.0 Part 2」の付録 D「ISO 8601 Date and Time Formats」 に定義されている日時フィールドの値の制約についてもまとめています。
XML Schema 1.0 と Java 表現の日時データ型の対応づけ | ||
---|---|---|
XML Schema 1.0 データ型 フィールド |
関連の XMLGregorianCalendar アクセサ |
値の範囲 |
year | getYear() + getEon() またはgetEonAndYear()
|
getYear() は、-(10^9-1) から (10^9)-1 の値または DatatypeConstants.FIELD_UNDEFINED 。getEon() は、数十億年単位の大きい桁の年の値。getEon() (10^9) 以上または -(10^9) 以下の値を格納する。null の値はフィールドが定義されていないことを示す。XML Schema 1.0 errata に 0 年が XML スキーマの将来のバージョンで有効な字句値となると記載されている場合、このクラスは year フィールドをゼロに設定することを許可する。そうでない場合は、year フィールドの値は正誤表および「SO-8601-1988」に記載されているとおりに処理される。W3C XML Schema 1.0 検証は、year フィールドの値がゼロになることを許可しない
|
month | getMonth() |
1 から 12 または DatatypeConstants.FIELD_UNDEFINED |
day | getDay() |
月と関係なく、最大の範囲は 1 から 31、または DatatypeConstants.FIELD_UNDEFINED 。「W3C XML Schema 1.0 Part 2」の付録 D に month フィールドの値に関する基準値の制約についての説明がある |
hour | getHour() |
0 から 24 または DatatypeConstants.FIELD_UNDEFINED 。値が 24 の場合、minute および second フィールドは XML Schema Errata によってゼロとなる必要がある
|
minute | getMinute() |
0 から 59 または DatatypeConstants.FIELD_UNDEFINED |
second |
getSecond() + getMillisecond() /1000 またはgetSecond() + getFractionalSecond()
|
0 から60 の getSecond() または DatatypeConstants.FIELD_UNDEFINED 。(注: 60 はうるう秒に対してのみ許可される。) getSecond() が定義されている場合は、getFractionalSecond() に 0.0 〜 1.0 の範囲の無限精度を使用できる。FractionalSecond は任意で、定義されていない場合は null の値となる。getMillisecond() は getFractionalSecond() の値の便宜上のミリ秒の精度
|
timezone | getTimezone() |
分数または DatatypeConstants.FIELD_UNDEFINED 。-14 時間 ( -14 * 60 分 ) から 14 時間 (14 * 60 分 ) の範囲の値
|
前述の表のフィールドに示されたすべての最大値領域制限は、このクラスのファクトリメソッド、@{link DatatypeFactory}、設定メソッド、および解析メソッドによってチェックされます。パラメータの値がフィールドの値制限外の場合、あるいは複合値によって無効な XMLGregorianCalendar インスタンスが構成される場合は、 IllegalArgumentException
がスローされます。 たとえば、6 月 31 日が指定された場合などです。
このクラスでは、次の処理が定義されます。
toString()
、DatatypeFactory.newXMLGregorianCalendar(String lexicalRepresentation)
の変換GregorianCalendar
、toGregorianCalendar(java.util.TimeZone timezone, java.util.Locale aLocale, XMLGregorianCalendar defaults)
、DatatypeFactory
の変換compare(XMLGregorianCalendar xmlGregorianCalendar)
compare(XMLGregorianCalendar xmlGregorianCalendar)
に関して定義された equals(Object)
Duration
による加算演算インスタンス
Duration
,
DatatypeFactory
コンストラクタの概要 | |
---|---|
XMLGregorianCalendar()
デフォルトの引数なしのコンストラクタです。 |
メソッドの概要 | |
---|---|
abstract void |
add(Duration duration)
このインスタンスに duration を追加します。 |
abstract void |
clear()
すべてのフィールドを未定義に設定解除します。 |
abstract Object |
clone()
このオブジェクトのコピーを作成して、返します。 |
abstract int |
compare(XMLGregorianCalendar xmlGregorianCalendar)
[W3C XML Schema 1.0 Part 2」のセクション 3.2.7.3「Order relation on dateTime」 に定義された部分順序リレーションに従って、W3C XML Schema 1.0 日時データ型の 2 つのインスタンスを比較します。 |
boolean |
equals(Object obj)
このカレンダを指定されたオブジェクトと比較します。 |
abstract int |
getDay()
日または DatatypeConstants.FIELD_UNDEFINED を返します。 |
abstract BigInteger |
getEon()
year の XML Schema 1.0 dataTime データ型フィールドの上位コンポーネントを返します。 |
abstract BigInteger |
getEonAndYear()
XML Schema 1.0 dateTime データ型フィールドの year を返します。 |
abstract BigDecimal |
getFractionalSecond()
小数点以下の秒を返します。 |
abstract int |
getHour()
時間または DatatypeConstants.FIELD_UNDEFINED を返します。 |
int |
getMillisecond()
getFractionalSecond() のミリ秒の精度を返します。 |
abstract int |
getMinute()
分または DatatypeConstants.FIELD_UNDEFINED を返します。 |
abstract int |
getMonth()
月数または DatatypeConstants.FIELD_UNDEFINED を返します。 |
abstract int |
getSecond()
秒または DatatypeConstants.FIELD_UNDEFINED を返します。 |
abstract int |
getTimezone()
オプションのフィールドが定義されていない場合は DatatypeConstants.FIELD_UNDEFINED を返します。 |
abstract TimeZone |
getTimeZone(int defaultZoneoffset)
このクラスの java.util.TimeZone を返します。 |
abstract QName |
getXMLSchemaType()
このインスタンスが対応する XML Schema 日時型の名前を返します。 |
abstract int |
getYear()
year の XML Schema 1.0 dataTime データ型フィールドの下位コンポーネント、または DatatypeConstants.FIELD_UNDEFINED を返します。 |
int |
hashCode()
equals メソッドの定義に一致するハッシュコードを返します。 |
abstract boolean |
isValid()
getXMLSchemaType() 定数によって、インスタンスを検証します。 |
abstract XMLGregorianCalendar |
normalize()
このインスタンスを UTC に正規化します。 |
abstract void |
reset()
この XMLGregorianCalendar を元の値にリセットします。 |
abstract void |
setDay(int day)
月の日数を設定します。 |
abstract void |
setFractionalSecond(BigDecimal fractional)
小数点以下の秒を設定します。 |
abstract void |
setHour(int hour)
時間を設定します。 |
abstract void |
setMillisecond(int millisecond)
ミリ秒を設定します。 |
abstract void |
setMinute(int minute)
分を設定します。 |
abstract void |
setMonth(int month)
月を設定します。 |
abstract void |
setSecond(int second)
秒を設定します。 |
void |
setTime(int hour,
int minute,
int second)
1 単位として時間を設定します。 |
void |
setTime(int hour,
int minute,
int second,
BigDecimal fractional)
オプションの無限精度の小数点以下の秒を含む時間を 1 単位として設定します。 |
void |
setTime(int hour,
int minute,
int second,
int millisecond)
オプションのミリ秒を含めて、時間を 1 単位として設定します。 |
abstract void |
setTimezone(int offset)
タイムゾーンオフセットに分数を設定します。 |
abstract void |
setYear(BigInteger year)
XSD dateTime 年フィールドの下位および上位コンポーネントを設定します。 |
abstract void |
setYear(int year)
XSD dateTime 年フィールドの年を設定します。 |
abstract GregorianCalendar |
toGregorianCalendar()
この XMLGregorianCalendar を GregorianCalendar に変換します。 |
abstract GregorianCalendar |
toGregorianCalendar(TimeZone timezone,
Locale aLocale,
XMLGregorianCalendar defaults)
提供されたパラメータに従って、この XMLGregorianCalendar を GregorianCalendar インスタンスに変換します。 |
String |
toString()
この XMLGregorianCalendar Object の String 表現を返します。 |
abstract String |
toXMLFormat()
this インスタンスの字句表現を返します。 |
クラス java.lang.Object から継承されたメソッド |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
コンストラクタの詳細 |
---|
public XMLGregorianCalendar()
注:XMLGregorianCalendar
のインスタンスを構築するには、常に DatatypeFactory
を使用します。このクラス上のコンストラクタは、一貫した状態のオブジェクトを生成するとは保証されておらず、将来削除される可能性があります。
メソッドの詳細 |
---|
public abstract void clear()
すべてのフィールドを未定義に設定解除します。
すべての int フィールドを DatatypeConstants.FIELD_UNDEFINED
に、参照フィールドを null に設定します。
public abstract void reset()
この XMLGregorianCalendar
を元の値にリセットします。
XMLGregorianCalendar
は、DatatypeFactory.newXMLGregorianCalendar()
、DatatypeFactory.newXMLGregorianCalendar(String lexicalRepresentation)
、DatatypeFactory.newXMLGregorianCalendar( BigInteger year, int month, int day, int hour, int minute, int second, BigDecimal fractionalSecond, int timezone)
、DatatypeFactory.newXMLGregorianCalendar( int year, int month, int day, int hour, int minute, int second, int millisecond, int timezone)
、DatatypeFactory.newXMLGregorianCalendar(GregorianCalendar cal)
、DatatypeFactory.newXMLGregorianCalendarDate( int year, int month, int day, int timezone)
、DatatypeFactory.newXMLGregorianCalendarTime( int hours, int minutes, int seconds, int timezone)
、DatatypeFactory.newXMLGregorianCalendarTime( int hours, int minutes, int seconds, BigDecimal fractionalSecond, int timezone)
、または DatatypeFactory.newXMLGregorianCalendarTime( int hours, int minutes, int seconds, int milliseconds, int timezone)
で作成された場合と同じ値にリセットされます。
reset()
は、既存の XMLGregorianCalendar
の再使用を許可するように設定されています。 このため、新しい XMLGregorianCalendar
の作成に関連するリソースを節約できます。
public abstract void setYear(BigInteger year)
XSD dateTime
年フィールドの下位および上位コンポーネントを設定します。
null
のパラメータ値で設定メソッドを呼び出して、このフィールドの設定を解除します。
year
- 値の制約については、「日時フィールド対応表の年フィールド」にまとめられている
IllegalArgumentException
- year
パラメータが 「日時フィールド対応表」に指定した フィールドの値の制限の範囲外の場合public abstract void setYear(int year)
XSD dateTime
年フィールドの年を設定します。
DatatypeConstants.FIELD_UNDEFINED
のパラメータ値で設定メソッドを呼び出して、このフィールドの設定を解除します。
注:year
パラメータの絶対値が 10^9 より小さい場合、XSD 年フィールドの eon コンポーネントはこのメソッドによって null
に設定されます。
year
- 値の制約については、「日時フィールド対応表の年フィールド」にまとめられている。年が DatatypeConstants.FIELD_UNDEFINED
の場合、eon は null
に設定されるpublic abstract void setMonth(int month)
月を設定します。
DatatypeConstants.FIELD_UNDEFINED
のパラメータ値で設定メソッドを呼び出して、このフィールドの設定を解除します。
month
- 値の制約については、「日時フィールド対応表の月フィールド」にまとめられている
IllegalArgumentException
- month
パラメータが 「日時フィールド対応表」に指定した フィールドの値の制限の範囲外の場合public abstract void setDay(int day)
月の日数を設定します。
DatatypeConstants.FIELD_UNDEFINED
のパラメータ値で設定メソッドを呼び出して、このフィールドの設定を解除します。
day
- 値の制約については、「日時フィールド対応表の日フィールド」にまとめられている
IllegalArgumentException
- day
パラメータが 「日時フィールド対応表」に指定した フィールドの値の制限の範囲外の場合public abstract void setTimezone(int offset)
タイムゾーンオフセットに分数を設定します。
DatatypeConstants.FIELD_UNDEFINED
のパラメータ値で設定メソッドを呼び出して、このフィールドの設定を解除します。
offset
- 値の制約については、 「日時フィールド対応表のタイムゾーンフィールド」にまとめられている
IllegalArgumentException
- offset
パラメータが 「日時フィールド対応表」に指定した フィールドの値の制限の範囲外の場合public void setTime(int hour, int minute, int second)
1 単位として時間を設定します。
hour
- 値の制約については、 「日時フィールド対応表の時間フィールド」にまとめられているminute
- 値の制約については、 「日時フィールド対応表の分フィールド」にまとめられているsecond
- 値の制約については、 「日時フィールド対応表の秒フィールド」にまとめられている
IllegalArgumentException
- パラメータが 「日時フィールド対応表」に指定した フィールドの値の制限の範囲外の場合setTime(int, int, int, BigDecimal)
public abstract void setHour(int hour)
時間を設定します。
DatatypeConstants.FIELD_UNDEFINED
のパラメータ値で設定メソッドを呼び出して、このフィールドの設定を解除します。
hour
- 値の制約については、「日時フィールド対応表の時間フィールド」にまとめられている
IllegalArgumentException
- hour
パラメータが 「日時フィールド対応表」に指定したフィールドの値の制限の範囲外の場合public abstract void setMinute(int minute)
分を設定します。
DatatypeConstants.FIELD_UNDEFINED
のパラメータ値で設定メソッドを呼び出して、このフィールドの設定を解除します。
minute
- 値の制約については、「日時フィールド対応表の分フィールド」にまとめられている
IllegalArgumentException
- minute
パラメータが 「日時フィールド対応表」に指定したフィールドの値の制限の範囲外の場合public abstract void setSecond(int second)
秒を設定します。
DatatypeConstants.FIELD_UNDEFINED
のパラメータ値で設定メソッドを呼び出して、このフィールドの設定を解除します。
second
- 値の制約については、「日時フィールド対応表の秒フィールド」にまとめられている
IllegalArgumentException
- second
パラメータが 「日時フィールド対応表」に指定したフィールドの値の制限の範囲外の場合public abstract void setMillisecond(int millisecond)
ミリ秒を設定します。
DatatypeConstants.FIELD_UNDEFINED
のパラメータ値で設定メソッドを呼び出して、このフィールドの設定を解除します。
millisecond
- 値の制約については、「日時フィールド対応表の秒フィールド」にまとめられている
IllegalArgumentException
- millisecond
パラメータが 「日時フィールド対応表」に指定したフィールドの値の制限の範囲外の場合public abstract void setFractionalSecond(BigDecimal fractional)
小数点以下の秒を設定します。
null
のパラメータ値で設定メソッドを呼び出して、このフィールドの設定を解除します。
fractional
- 値の制約については、「日時フィールド対応表の秒フィールド」にまとめられている
IllegalArgumentException
- fractional
パラメータが 「日時フィールド対応表」に指定したフィールドの値の制限の範囲外の場合public void setTime(int hour, int minute, int second, BigDecimal fractional)
オプションの無限精度の小数点以下の秒を含む時間を 1 単位として設定します。
hour
- 値の制約については、 「日時フィールド対応表の時間フィールド」にまとめられているminute
- 値の制約については、 「日時フィールド対応表の分フィールド」にまとめられているsecond
- 値の制約については、 「日時フィールド対応表の秒フィールド」にまとめられているfractional
- null
の値はこのオプションのフィールドが 設定されていないことを示す
IllegalArgumentException
- パラメータが 「日時フィールド対応表」に指定した フィールドの値の制限の範囲外の場合public void setTime(int hour, int minute, int second, int millisecond)
オプションのミリ秒を含めて、時間を 1 単位として設定します。
hour
- 値の制約については、 「日時フィールド対応表の時間フィールド」にまとめられているminute
- 値の制約については、 「日時フィールド対応表の分フィールド」にまとめられているsecond
- 値の制約については、 「日時フィールド対応表の秒フィールド」にまとめられているmillisecond
- DatatypeConstants.FIELD_UNDEFINED
の値は、オプションのフィールドが 設定されていないことを示す
IllegalArgumentException
- パラメータが 「日時フィールド対応表」に指定した フィールドの値の制限の範囲外の場合public abstract BigInteger getEon()
year
の XML Schema 1.0 dataTime データ型フィールドの上位コンポーネントを返します。 この year フィールドのオプションの部分が定義されていない場合は null
を返します。
この値の制約については、「日時フィールド対応表の年フィールド」にまとめられています。
XMLGregorianCalendar
の eon。戻り値は 10^9 の整数倍getYear()
,
getEonAndYear()
public abstract int getYear()
year
の XML Schema 1.0 dataTime データ型フィールドの下位コンポーネント、または DatatypeConstants.FIELD_UNDEFINED
を返します。
この値の制約については、「日時フィールド対応表の年フィールド」にまとめられています。
XMLGregorianCalendar
の年getEon()
,
getEonAndYear()
public abstract BigInteger getEonAndYear()
XML Schema 1.0 dateTime データ型フィールドの year
を返します。
この値の制約については、「日時フィールド対応表の年フィールド」にまとめられています。
eon
および BigInteger.valueOf(year)
の両方が定義されている場合は、 それらの合計。year
のみが定義されている場合は、 それが返される。eon
と year
の両方とも定義されていない場合は、 null
が返されるgetEon()
,
getYear()
public abstract int getMonth()
月数または DatatypeConstants.FIELD_UNDEFINED
を返します。
この値の制約については、「日時フィールド対応表の月フィールド」にまとめられています。
XMLGregorianCalendar
の年public abstract int getDay()
DatatypeConstants.FIELD_UNDEFINED
を返します。
この値の制約については、「日時フィールド対応表の日フィールド」にまとめられています。 分単位のタイムゾーンオフセットを返します。
setDay(int)
public abstract int getTimezone()
DatatypeConstants.FIELD_UNDEFINED
を返します。
この値の制約については、「日時フィールド対応表のタイムゾーンフィールド」にまとめられています。
setTimezone(int)
public abstract int getHour()
DatatypeConstants.FIELD_UNDEFINED
を返します。このフィールドが定義されていない場合は DatatypeConstants.FIELD_UNDEFINED
を返します。
この値の制約については、「日時フィールド対応表の時間フィールド」にまとめられています。
setTime(int, int, int)
public abstract int getMinute()
DatatypeConstants.FIELD_UNDEFINED
を返します。
このフィールドが定義されていない場合は DatatypeConstants.FIELD_UNDEFINED
を返します。
この値の制約については、「日時フィールド対応表の分フィールド」にまとめられています。
setTime(int, int, int)
public abstract int getSecond()
秒または DatatypeConstants.FIELD_UNDEFINED
を返します。
このフィールドが定義されていない場合は DatatypeConstants.FIELD_UNDEFINED
を返します。このフィールドが定義されていない場合、getFractionalSecond()
および getMillisecond()
で表されるオプションの xs:dateTime 小数点以下の秒フィールドを定義できません。
この値の制約については、「日時フィールド対応表の秒フィールド」にまとめられています。
XMLGregorianCalendar
の秒getFractionalSecond()
,
getMillisecond()
,
setTime(int, int, int)
public int getMillisecond()
getFractionalSecond()
のミリ秒の精度を返します。
このメソッドは、getFractionalSecond()
によって返される無限精度の小数点以下の秒への簡易アクセス用メソッドです。戻り値は、getFractionalSecond()
のミリ秒の値に切り下げられます。getFractionalSecond()
が null
を返す場合、このメソッドは DatatypeConstants.FIELD_UNDEFINED
を返します。
この値の制約については、「日時フィールド対応表の秒フィールド」にまとめられています。
XMLGregorianCalendar
のミリ秒getFractionalSecond()
,
setTime(int, int, int)
public abstract BigDecimal getFractionalSecond()
小数点以下の秒を返します。
このオプションフィールドが定義されていない場合は、null
を返します。
値の制約については、「日時フィールド対応表の秒フィールド」に詳しく説明しています。
このオプションのフィールドは、getSecond()
によって表される xs:dateTime 分フィールドが DatatypeConstants.FIELD_UNDEFINED
を返さない場合にのみ、定義された値を持つことができます。
XMLGregorianCalendar
の小数点以下の秒getSecond()
,
setTime(int, int, int, BigDecimal)
public abstract int compare(XMLGregorianCalendar xmlGregorianCalendar)
[W3C XML Schema 1.0 Part 2」のセクション 3.2.7.3「Order relation on dateTime」 に定義された部分順序リレーションに従って、W3C XML Schema 1.0 日時データ型の 2 つのインスタンスを比較します。
このクラスのアクセス用メソッドに対応する xsd:dateTime
データ型については「日時フィールド対応表」に定義しています。
xmlGregorianCalendar
- 比較する XMLGregorianCalendar
のインスタンス
this
XMLGregorianCalendar
と DatatypeConstants.LESSER
、 DatatypeConstants.EQUAL
、 DatatypeConstants.GREATER
、または DatatypeConstants.INDETERMINATE
として指定された xmlGregorianCalendar
との関係
NullPointerException
- xmlGregorianCalendar
が null の場合public abstract XMLGregorianCalendar normalize()
このインスタンスを UTC に正規化します。
2000-03-04T23:00:00+03:00 は、2000-03-04T20:00:00Z に正規化されます。
「W3C XML Schema 1.0 Part 2のセクション 3.2.7.3 (A)」を実装します。
this
XMLGregorianCalendar
public boolean equals(Object obj)
このカレンダを指定されたオブジェクトと比較します。引数が null でなく、このオブジェクトと同じ時点を表す XMLGregorianCalendar
オブジェクトである場合にだけ、結果は true
になります。
Object
内の equals
obj
- 比較するオブジェクト
obj
が XMLGregorianCalendar
のインスタンスであり、 compare(XMLGregorianCalendar obj)
が DatatypeConstants.EQUAL
を 返す場合は true
。 そうでない場合は false
Object.hashCode()
,
Hashtable
public int hashCode()
equals メソッドの定義に一致するハッシュコードを返します。
Object
内の hashCode
Object.equals(java.lang.Object)
,
Hashtable
public abstract String toXMLFormat()
this
インスタンスの字句表現を返します。この形式は「XML Schema 1.0 Part 2」のセクション 3.2.[7-14]「1 Lexical Representation」に指定されています。
特定の目的の字句表現形式は getXMLSchemaType()
によって判断します。
XMLGregorianCalendar
の String
表現としての XML
IllegalStateException
- 設定フィールドの組み合わせが、 定義された 8 つの XML Schema 日時データ型のいずれかに一致しない場合public abstract QName getXMLSchemaType()
このインスタンスが対応する XML Schema 日時型の名前を返します。型は設定されるフィールドに基づいて計算されます。
XML Schema 1.0 日時データ型の必須フィールド (すべての日時データ型でタイムゾーンはオプション) |
||||||
---|---|---|---|---|---|---|
データ型 | year | month | day | hour | minute | second |
DatatypeConstants.DATETIME |
0 | 0 | 0 | 0 | 0 | 0 |
DatatypeConstants.DATE |
0 | 0 | 0 | |||
DatatypeConstants.TIME |
0 | 0 | 0 | |||
DatatypeConstants.GYEARMONTH |
0 | 0 | ||||
DatatypeConstants.GMONTHDAY |
0 | 0 | ||||
DatatypeConstants.GYEAR |
0 | |||||
DatatypeConstants.GMONTH |
0 | |||||
DatatypeConstants.GDAY |
0 |
DatatypeConstants.DATETIME
、 DatatypeConstants.TIME
、 DatatypeConstants.DATE
、 DatatypeConstants.GYEARMONTH
、 DatatypeConstants.GMONTHDAY
、 DatatypeConstants.GYEAR
、 DatatypeConstants.GMONTH
、または DatatypeConstants.GDAY
IllegalStateException
- 設定フィールドの組み合わせが、 定義された 8 つの XML Schema 日時データ型のいずれかに一致しない場合public String toString()
この XMLGregorianCalendar
Object
の String
表現を返します。
この結果は、toXMLFormat()
によって生成された字句表現です。
Object
内の toString
XMLGregorianCalendar
の null
以外の有効な String
表現
IllegalStateException
- 設定フィールドの組み合わせが、 定義された 8 つの XML Schema 日時データ型のいずれかに一致しない場合toXMLFormat()
public abstract boolean isValid()
getXMLSchemaType()
定数によって、インスタンスを検証します。
public abstract void add(Duration duration)
このインスタンスに duration
を追加します。
この計算は「XML Schema 1.0 Part 2」の付録 E「Adding durations to dateTimes」 に指定されています。 「日時対応表」に XML Schema 1.0 dateTime
フィールドとこのクラスのそれらのフィールドの表現の対応を定義しています。
duration
- この XMLGregorianCalendar
に追加するデュレーション
NullPointerException
- duration
パラメータが null
の場合public abstract GregorianCalendar toGregorianCalendar()
この XMLGregorianCalendar
を GregorianCalendar
に変換します。
this
インスタンスに未定義フィールドがある場合、この変換は java.util.GregorianCalendar
のその対応するフィールドのデフォルトに依存します。XML Schema 1.0 日時データ型と java.util.GregorianCalendar
のおもな違いは、Timezone 値が日時データ型ではオプションで、java.util.GregorianCalendar
では必須であることです。デフォルトが決定されるしくみについては、java.util.TimeZone.getDefault()
の Javadoc を参照してください。TimeZone
インスタンスを明示的に指定するには、toGregorianCalendar(TimeZone, Locale, XMLGregorianCalendar)
を参照してください。
このクラスから java.util.GregorianCalendar へのフィールドごとの変換
|
|
---|---|
java.util.GregorianCalendar フィールド |
javax.xml.datatype.XMLGregorianCalendar フィールド |
ERA |
getEonAndYear() .signum() < 0 ?GregorianCalendar.BC :GregorianCalendar.AD |
YEAR |
getEonAndYear() .abs().intValue() * |
MONTH |
getMonth() - DatatypeConstants.JANUARY + Calendar.JANUARY |
DAY_OF_MONTH |
getDay() |
HOUR_OF_DAY |
getHour() |
MINUTE |
getMinute() |
SECOND |
getSecond() |
MILLISECOND |
getFractionalSecond() からミリ秒を取得* |
GregorianCalendar.setTimeZone(TimeZone) |
カスタムタイムゾーン ID にフォーマットされた getTimezone() |
変換の実装の一貫性を確保するため、新しい GregorianCalendar
は次のようにインスタンス化される必要があります。
timeZone
値を使用し、新しい java.util.GregorianCalendar(timeZone,Locale.getDefault())
を作成する
Calendar.clear()
を呼び出して、すべての GregorianCalenda フィールドを初期化するGregorianCalendar.setGregorianChange( new Date(Long.MIN_VALUE))
を呼び出して、純粋なグレゴリオ歴を取得するCalendar.set(int,int)
メソッドを使用して、フィールド ERA、YEAR、MONTH、DAY_OF_MONTH、HOUR_OF_DAY、MINUTE、SECOND、および MILLISECOND を設定する
toGregorianCalendar(java.util.TimeZone, java.util.Locale, XMLGregorianCalendar)
public abstract GregorianCalendar toGregorianCalendar(TimeZone timezone, Locale aLocale, XMLGregorianCalendar defaults)
提供されたパラメータに従って、この XMLGregorianCalendar
を GregorianCalendar
インスタンスに変換します。
XML Schema 1.0 日時データ型には、タイムゾーン ID や夏時間タイムゾーン ID の概念がないため、この変換処理によって、ユーザーは timezone
パラメータで明示的にそれらを指定できます。
戻り値の TimeZone
フィールドは次のように計算されます。
timeZone
が null でない場合、タイムゾーン フィールドであるthis.getTimezone() != FIELD_UNDEFINED
の場合、this.getTimezone()
を使用して、カスタムタイムゾーン ID で java.util.TimeZone
を作成するdefaults.getTimezone() != FIELD_UNDEFINED
の場合、defaults.getTimezone()
を使用して、カスタムタイムゾーン ID で java.util.TimeZone
を作成するjava.util.TimeZone.getDefault()
によって指定されているように、ホストが定義されている場合に、GregorianCalendar
デフォルトタイムゾーン値を使用する変換の実装の一貫性を確保するため、新しい GregorianCalendar
は次のようにインスタンス化される必要があります。
Locale
パラメータで、新しい java.util.GregorianCalendar(TimeZone, Locale)
を作成する
Calendar.clear()
を呼び出して、すべての GregorianCalenda フィールドを初期化するGregorianCalendar.setGregorianChange( new Date(Long.MIN_VALUE))
を呼び出して、純粋なグレゴリオ歴を取得するCalendar.set(int,int)
メソッドを使用して、フィールド ERA、YEAR、MONTH、DAY_OF_MONTH、HOUR_OF_DAY、MINUTE、SECOND、および MILLISECOND を設定する
timezone
- タイムゾーンを提供する。null
は有効な値aLocale
- 明示的なロケールを提供する。値が null
の場合は、 デフォルトの GregorianCalendar ロケールを使用するdefaults
- このインスタンスの対応するフィールドが FIELD_UNDEFINED または null の場合に 使用するデフォルトのフィールド値を提供する。defaults
が null
の場合または 指定された defaults
が定義されていない場合、 java.util.GregorianCalendar
のデフォルトを使用する
public abstract TimeZone getTimeZone(int defaultZoneoffset)
このクラスの java.util.TimeZone
を返します。
このインスタンスのタイムゾーンフィールドが定義されている場合は、ゾーンオフセットのカスタムタイムゾーン ID で初期化された TimeZone を返します。タイムゾーンフィールドが定義されていない場合は、渡された defaultZoneoffset を試みます。 defaultZoneoffset が FIELD_UNDEFINED の場合は、このホストのデフォルトのタイムゾーンを返します。これは、java.util.GregorianCalendar のデフォルトと同じです。
defaultZoneoffset
- このゾーンオフセットが DatatypeConstants.FIELD_UNDEFINED
である場合は、デフォルトのゾーンオフセット
public abstract Object clone()
このオブジェクトのコピーを作成して、返します。
Object
内の clone
Object
のコピーCloneable
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。