©
本文档使用
php.cn手册 发布
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.Object javax.xml.datatype.DatatypeFactory
public abstract class DatatypeFactory
创建新 javax.xml.datatype
Object
的工厂,创建的对象可提供 XML 和 Java Object
之间的映射。
newInstance()
用于创建新的 DatatypeFactory
。按下列顺序使用以下实现解析机制:
DATATYPEFACTORY_PROPERTY
指定的系统属性 "javax.xml.datatype.DatatypeFactory
" 存在,则实例化具有属性值名称的类。将实例化进程中抛出的任何异常包装为 DatatypeConfigurationException
。
Properties
Object
中加载它。然后查询 Properties
Object
,以获取前面步骤中的文档介绍的属性,并按照前面步骤中文档的介绍进行处理。
META-INF/services/java.xml.datatype.DatatypeFactory
。将实例化进程中抛出的任何异常包装为 DatatypeConfigurationException
。
DATATYPEFACTORY_IMPLEMENTATION_CLASS
指定的 Class
。实例化进程中抛出的任何异常将被包装为 DatatypeConfigurationException
。
字段摘要 | |
---|---|
static String |
DATATYPEFACTORY_IMPLEMENTATION_CLASS
JSR 206: Java(TM) API for XML Processing (JAXP) 1.3 中定义的默认实现类名称。 |
static String |
DATATYPEFACTORY_PROPERTY
JSR 206:Java(TM) API for XML Processing (JAXP) 1.3 中定义的默认实现类名称。 |
构造方法摘要 | |
---|---|
protected |
DatatypeFactory()
受保护的构造方法,包外无法实例化。 |
方法摘要 | |
---|---|
abstract Duration |
newDuration(boolean isPositive,
BigInteger years,
BigInteger months,
BigInteger days,
BigInteger hours,
BigInteger minutes,
BigDecimal seconds)
获取 Duration 的新实例,该 Duration 根据 isPositive、years、months、days、hours、minutes、seconds 的值确定。 |
Duration |
newDuration(boolean isPositive,
int years,
int months,
int days,
int hours,
int minutes,
int seconds)
获取 Duration 的新实例,该 Duration 根据 isPositive、years、months、days、hours、minutes、seconds 的值确定。 |
abstract Duration |
newDuration(long durationInMilliSeconds)
获取新的 Duration 实例,它将 Duration 指定为毫秒。 |
abstract Duration |
newDuration(String lexicalRepresentation)
获取新的 Duration 实例,它根据 XML 模式 1.0 第 3.2.6.1 节中的定义将 Duration 指定为其字符串表示形式 "PnYnMnDTnHnMnS"。 |
Duration |
newDurationDayTime(boolean isPositive,
BigInteger day,
BigInteger hour,
BigInteger minute,
BigInteger second)
根据 XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration 中的定义,使用指定 day 、hour 、minute 和 second 创建类型为 xdt:dayTimeDuration 的 Duration 。 |
Duration |
newDurationDayTime(boolean isPositive,
int day,
int hour,
int minute,
int second)
根据 XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration 中的定义,使用指定 day 、hour 、minute 和 second 创建类型为 xdt:dayTimeDuration 的 Duration 。 |
Duration |
newDurationDayTime(long durationInMilliseconds)
使用 XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration 中定义的指定毫秒创建类型为 xdt:dayTimeDuration 的 Duration 。 |
Duration |
newDurationDayTime(String lexicalRepresentation)
通过解析其 String 表示形式 "PnDTnHnMnS"(XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration)创建类型为 xdt:dayTimeDuration 的 Duration 。 |
Duration |
newDurationYearMonth(boolean isPositive,
BigInteger year,
BigInteger month)
根据 XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration 中的定义,使用指定 year 和 month 创建类型为 xdt:yearMonthDuration 的 Duration 。 |
Duration |
newDurationYearMonth(boolean isPositive,
int year,
int month)
根据 XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration 中的定义,使用指定 year 和 month 创建类型为 xdt:yearMonthDuration 的 Duration 。 |
Duration |
newDurationYearMonth(long durationInMilliseconds)
根据 XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration 中的定义,使用指定毫秒创建类型为 xdt:yearMonthDuration 的 Duration 。 |
Duration |
newDurationYearMonth(String lexicalRepresentation)
通过解析其 String 表示形式 "PnYnM"(XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration)创建类型为 xdt:yearMonthDuration 的 Duration 。 |
static DatatypeFactory |
newInstance()
获取新的 DatatypeFactory 实例。 |
static DatatypeFactory |
newInstance(String factoryClassName,
ClassLoader classLoader)
从类名称中获取新的 DatatypeFactory 实例。 |
abstract XMLGregorianCalendar |
newXMLGregorianCalendar()
创建新的 XMLGregorianCalendar 实例。 |
abstract XMLGregorianCalendar |
newXMLGregorianCalendar(BigInteger year,
int month,
int day,
int hour,
int minute,
int second,
BigDecimal fractionalSecond,
int timezone)
W3C XML 模式 1.0 推荐考虑完整值空间的构造方法,该方法用于 xsd:dateTime 和相关的内置数据类型。 |
abstract XMLGregorianCalendar |
newXMLGregorianCalendar(GregorianCalendar cal)
根据 GregorianCalendar 创建 XMLGregorianCalendar 。 |
XMLGregorianCalendar |
newXMLGregorianCalendar(int year,
int month,
int day,
int hour,
int minute,
int second,
int millisecond,
int timezone)
java.util.GregorianCalendar 实例需要转换为 XMLGregorianCalendar 实例的值空间的构造方法。 |
abstract XMLGregorianCalendar |
newXMLGregorianCalendar(String lexicalRepresentation)
通过将字符串解析为词汇表示形式,创建新的 XMLGregorianCalendar。 |
XMLGregorianCalendar |
newXMLGregorianCalendarDate(int year,
int month,
int day,
int timezone)
创建 XML 模式内置数据类型 date 或 g* 的 Java 表示形式。 |
XMLGregorianCalendar |
newXMLGregorianCalendarTime(int hours,
int minutes,
int seconds,
BigDecimal fractionalSecond,
int timezone)
创建 XML 模式内置数据类型 time 的 Java 实例。 |
XMLGregorianCalendar |
newXMLGregorianCalendarTime(int hours,
int minutes,
int seconds,
int timezone)
创建 XML 模式内置数据类型 time 的 Java 实例。 |
XMLGregorianCalendar |
newXMLGregorianCalendarTime(int hours,
int minutes,
int seconds,
int milliseconds,
int timezone)
创建 XML 模式内置数据类型 time 的 Java 实例。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
字段详细信息 |
---|
public static final String DATATYPEFACTORY_PROPERTY
JSR 206:Java(TM) API for XML Processing (JAXP) 1.3 中定义的默认实现类名称。
默认值为 javax.xml.datatype.DatatypeFactory
。
public static final String DATATYPEFACTORY_IMPLEMENTATION_CLASS
JSR 206: Java(TM) API for XML Processing (JAXP) 1.3 中定义的默认实现类名称。
如果其他实现解析机制都没有成功,则实现者应该指定将被实例化的恰当类的名称。
用户不应该引用此字段;该字段只用来记录工厂实现详细信息。
构造方法详细信息 |
---|
protected DatatypeFactory()
受保护的构造方法,包外无法实例化。
使用 newInstance()
创建 DatatypeFactory
。
方法详细信息 |
---|
public static DatatypeFactory newInstance() throws DatatypeConfigurationException
获取新的 DatatypeFactory
实例。
实现解析机制定义在此 Class
的文档中。
DatatypeFactory
实例
DatatypeConfigurationException
- 如果该实现不可用,或者无法实例化。newInstance(String factoryClassName, ClassLoader classLoader)
public static DatatypeFactory newInstance(String factoryClassName, ClassLoader classLoader) throws DatatypeConfigurationException
从类名称中获取新的 DatatypeFactory
实例。此函数在类路径中有多个提供者时很有用。它可以对应用程序提供更多的控制,因为它可以指定应该加载哪个提供者。
在应用程序获取对 DatatypeFactory
的引用后,它可以使用工厂来配置和获取数据类型实例。
设置 jaxp.debug
系统属性将导致此方法将许多调试消息打印到 System.err
,这些消息说明了正在执行的操作以及何处可以找到它。
如有问题,可以尝试使用以下代码:
java -Djaxp.debug=1 YourProgram ....
factoryClassName
- 提供 javax.xml.datatype.DatatypeFactory
实现的完全限定工厂类名称。classLoader
- 用来加载工厂类的 ClassLoader
。如果该参数为 null
,则使用当前 Thread
的上下文类加载器来加载工厂类。
DatatypeFactory
实例
DatatypeConfigurationException
- 如果 factoryClassName
为 null
,或者无法加载和实例化工厂类。newInstance()
public abstract Duration newDuration(String lexicalRepresentation)
获取新的 Duration
实例,它根据 XML 模式 1.0 第 3.2.6.1 节中的定义将 Duration
指定为其字符串表示形式 "PnYnMnDTnHnMnS"。
XML 模式第二部分 Datatypes 中的 3.2.6 节 duration 将持续时间
定义如下:
持续时间表示某一时间段。持续时间的值空间是六维空间,其中坐标分别指定 [ISO 8601] 的第 5.5.3.2 节中定义的 Gregorian year、month、day、hour、minute 和 second 组件。这些组件根据其重要性按其出现顺序(即 year、month、day、hour、minute、second)排序。
六个值都可以通过创建的 Duration
设置和获得
XML 模式规范说明值可以为任意大小。实现可以选择不(或不能)支持任意大和/或小的值。如果超过实现容量,则抛出 UnsupportedOperationException
和指示实现限制的消息。
lexicalRepresentation
- Duration
的 String
表示形式。
lexicalRepresentation
创建的新 Duration
。
IllegalArgumentException
- 如果 lexicalRepresentation
不是 Duration
的有效表示形式。
UnsupportedOperationException
- 如果实现无法支持请求值。
NullPointerException
- 如果 lexicalRepresentation
为 null
。public abstract Duration newDuration(long durationInMilliSeconds)
获取新的 Duration
实例,它将 Duration
指定为毫秒。
XML 模式第二部分 Datatypes 中的 3.2.6 节将持续时间
定义为:
持续时间表示某一时间段。持续时间的值空间是六维空间,其中坐标分别指定 [ISO 8601] 的第 5.5.3.2 节中定义的 Gregorian year、month、day、hour、minute 和 second 组件。这些组件根据其重要性按其出现顺序(即 year、month、day、hour、minute 和 second)排序。
六个值都可以通过计算指定毫秒的值来设置,通过创建的 Duration
的 get
方法获得。该值符合以下规范并由其定义:
XMLGregorianCalendar
XML 模式 1.0 和 Java 表示形式之间的日期/时间数据类型字段映射关系通过 GregorianCalendar
使用的历元开始时间定义默认开始实例:即 Calendar.YEAR
= 1970、Calendar.MONTH
= Calendar.JANUARY
、Calendar.DATE
= 1 等。这非常重要,因为阳历中存在变化,例如,对于 month = Calendar.FEBRUARY
,闰年会有不同的天数,所以 Duration.getMonths()
和 Duration.getDays()
的结果都会受到影响。
durationInMilliSeconds
- 要创建的 Duration,以毫秒为单位。
durationInMilliSeconds
的新 Duration
。public abstract Duration newDuration(boolean isPositive, BigInteger years, BigInteger months, BigInteger days, BigInteger hours, BigInteger minutes, BigDecimal seconds)
获取 Duration
的新实例,该 Duration
根据 isPositive、years、months、days、hours、minutes、seconds 的值确定。
XML 模式规范说明值可以为任意大小。实现可以选择不(或不能)支持任意大和/或小的值。如果超过实现容量,则抛出 UnsupportedOperationException
和指示实现限制的消息。
null
值指示不设置字段。
isPositive
- 设置为 false
将创建负的 Duration。当 Duration 的长度为零时,将忽略此参数。years
- 此 Duration
的年months
- 此 Duration
的月days
- 此 Duration
的日hours
- 此 Duration
的时minutes
- 此 Duration
的分seconds
- 此 Duration
的秒
Duration
。
IllegalArgumentException
- 如果值不是 Duration
的有效表示形式:如果所有这些字段(years、months 等等)为 null,或者任何一个为负。
UnsupportedOperationException
- 如果实现无法支持请求值。public Duration newDuration(boolean isPositive, int years, int months, int days, int hours, int minutes, int seconds)
获取 Duration
的新实例,该 Duration
根据 isPositive、years、months、days、hours、minutes、seconds 的值确定。
DatatypeConstants.FIELD_UNDEFINED
值指示不设置字段。
isPositive
- 设置为 false
将创建负的 Duration。当 Duration 的长度为零时,将忽略此参数。years
- 此 Duration
的年months
- 此 Duration
的月days
- 此 Duration
的日hours
- 此 Duration
的时minutes
- 此 Duration
的分seconds
- 此 Duration
的秒
Duration
。
IllegalArgumentException
- 如果值不是 Duration
的有效表示形式:如果任一字段为负。newDuration( boolean isPositive, BigInteger years, BigInteger months, BigInteger days, BigInteger hours, BigInteger minutes, BigDecimal seconds)
public Duration newDurationDayTime(String lexicalRepresentation)
通过解析其 String
表示形式 "PnDTnHnMnS"(XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration)创建类型为 xdt:dayTimeDuration
的 Duration
。
数据类型 xdt:dayTimeDuration
是 xs:duration
的子类型,xs:duration
的词汇表示形式只包含 day、hour、minute 和 second 组件。此数据类型位于名称空间 http://www.w3.org/2003/11/xpath-datatypes
中。
四个值都可以从创建的 Duration
设置和获得。
XML 模式规范说明值可以为任意大小。实现可以选择不(或不能)支持任意大和/或小的值。如果超过实现容量,则抛出 UnsupportedOperationException
和指示实现限制的消息。
lexicalRepresentation
- Duration 的词汇表示形式。
lexicalRepresentation
创建的新 Duration
。
IllegalArgumentException
- 如果 lexicalRepresentation
不是只以日期和时间形式表达的 Duration
的有效表示形式。
UnsupportedOperationException
- 如果实现无法支持请求值。
NullPointerException
- 如果 lexicalRepresentation
为 null
。public Duration newDurationDayTime(long durationInMilliseconds)
使用 XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration 中定义的指定毫秒创建类型为 xdt:dayTimeDuration
的 Duration
。
数据类型 xdt:dayTimeDuration
是 xs:duration
的子类型,xs:duration
词汇表示形式只包含 day、hour、minute 和 second 组件。此数据类型位于名称空间 http://www.w3.org/2003/11/xpath-datatypes
中。
四个值都可以通过计算指定毫秒的值设置,通过创建的 Duration
的 get
方法获得。该值符合以下规范并由其定义:
XMLGregorianCalendar
XML 模式 1.0 和 Java 表示形式之间的日期/时间数据类型字段映射关系通过 GregorianCalendar
使用的历元开始时间定义默认开始实例:即 Calendar.YEAR
= 1970、Calendar.MONTH
= Calendar.JANUARY
、Calendar.DATE
= 1 等。这非常重要,因为阳历中存在变化,例如,对于 month = Calendar.FEBRUARY
,闰年会有不同的天数,所以 Duration.getDays()
的结果将受到影响。
丢弃确定 day、hour、minute 和 second 之后所有剩余毫秒。
durationInMilliseconds
- 要创建的 Duration
的毫秒。
durationInMilliseconds
创建的新 Duration
。public Duration newDurationDayTime(boolean isPositive, BigInteger day, BigInteger hour, BigInteger minute, BigInteger second)
根据 XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration 中的定义,使用指定 day
、hour
、minute
和 second
创建类型为 xdt:dayTimeDuration
的 Duration
。
数据类型 xdt:dayTimeDuration
是 xs:duration
的子类型,xs:duration
词汇表示形式只包含 day、hour、minute 和 second 组件。此数据类型位于名称空间 http://www.w3.org/2003/11/xpath-datatypes
中。
XML 模式规范说明值可以为任意大小。实现可以选择不(或不能)支持任意大和/或小的值。如果超过实现容量,则抛出 UnsupportedOperationException
和指示实现限制的消息。
null
值指示不设置字段。
isPositive
- 设置为 false
将创建负的 Duration。当 Duration 的长度为零时,将忽略此参数。day
- Duration
的日。hour
- Duration
的时。minute
- Duration
的分。second
- Duration
的秒。
day
、hour
、minute
和 second
创建新的 Duration
。
IllegalArgumentException
- 如果值不是 Duration
的有效表示形式:如果所有这些字段(years、months 等等)为 null,或者任何一个为负。
UnsupportedOperationException
- 如果实现无法支持请求值。public Duration newDurationDayTime(boolean isPositive, int day, int hour, int minute, int second)
根据 XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration 中的定义,使用指定 day
、hour
、minute
和 second
创建类型为 xdt:dayTimeDuration
的 Duration
。
数据类型 xdt:dayTimeDuration
是 xs:duration
的子类型,xs:duration
词汇表示形式仅包含 day、hour、minute 和 second 组件。此数据类型位于名称空间 http://www.w3.org/2003/11/xpath-datatypes
中。
DatatypeConstants.FIELD_UNDEFINED
值指示不设置字段。
isPositive
- 设置为 false
将创建负的 Duration。当 Duration 的长度为零时,将忽略此参数。day
- Duration
的日。hour
- Duration
的时。minute
- Duration
的分。second
- Duration
的秒。
day
、hour
、minute
和 second
创建新的 Duration
。
IllegalArgumentException
- 如果值不是 Duration
的有效表示形式:如果所有这些字段(years、months 等等)为 null,或者任何一个为负。public Duration newDurationYearMonth(String lexicalRepresentation)
通过解析其 String
表示形式 "PnYnM"(XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration)创建类型为 xdt:yearMonthDuration
的 Duration
。
数据类型 xdt:yearMonthDuration
是 xs:duration
的子类型,xs:duration
词汇表示形式仅包含 year 和 month 组件。此数据类型位于名称空间 XMLConstants.W3C_XPATH_DATATYPE_NS_URI
中。
这两个值都可以从创建的 Duration
设置和获得
XML 模式规范说明值可以为任意大小。实现可以选择不(或不能)支持任意大和/或小的值。如果超过实现容量,则抛出 UnsupportedOperationException
和指示实现限制的消息。
lexicalRepresentation
- Duration 的词汇表示形式。
lexicalRepresentation
创建的新 Duration
。
IllegalArgumentException
- 如果 lexicalRepresentation
不是通过 years 和 months 表示的 Duration
的有效表示形式。
UnsupportedOperationException
- 如果实现无法支持请求值。
NullPointerException
- 如果 lexicalRepresentation
为 null
。public Duration newDurationYearMonth(long durationInMilliseconds)
根据 XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration 中的定义,使用指定毫秒创建类型为 xdt:yearMonthDuration
的 Duration
。
数据类型 xdt:yearMonthDuration
是 xs:duration
的子类型,xs:duration
词汇表示形式只包含 year 和 month 组件。此数据类型位于名称空间 XMLConstants.W3C_XPATH_DATATYPE_NS_URI
中。
两个值都可以通过计算指定毫秒的值设置,通过创建的 Duration
的 get
方法获得。该值符合以下规范并由其定义:
XMLGregorianCalendar
XML 模式 1.0 和 Java 表示形式之间的日期/时间数据类型字段映射关系 通过 GregorianCalendar
使用的历元开始时间定义默认开始实例:即 Calendar.YEAR
= 1970、Calendar.MONTH
= Calendar.JANUARY
、Calendar.DATE
= 1 等。这非常重要,因为阳历中存在变化,例如,对于 month = Calendar.FEBRUARY
,闰年会有不同的天数,所以 Duration.getMonths()
的结果将受到影响。
丢弃确定 year 和 month 之后所有剩余毫秒。
durationInMilliseconds
- 要创建的 Duration
的毫秒。
durationInMilliseconds
创建的新 Duration
。public Duration newDurationYearMonth(boolean isPositive, BigInteger year, BigInteger month)
根据 XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration 中的定义,使用指定 year
和 month
创建类型为 xdt:yearMonthDuration
的 Duration
。
XML 模式规范说明值可以为任意大小。实现可以选择不(或不能)支持任意大和/或小的值。如果超过实现容量,则抛出 UnsupportedOperationException
和指示实现限制的消息。
null
值指示不设置字段。
isPositive
- 设置为 false
将创建负的 Duration。当 Duration 的长度为零时,将忽略此参数。year
- Duration
的年。month
- Duration
的月。
year
和 month
创建的新 Duration
。
IllegalArgumentException
- 如果值不是 Duration
的有效表示形式:如果所有这些字段(years、months 等等)为 null,或者任何一个为负。
UnsupportedOperationException
- 如果实现无法支持请求值。public Duration newDurationYearMonth(boolean isPositive, int year, int month)
根据 XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration 中的定义,使用指定 year
和 month
创建类型为 xdt:yearMonthDuration
的 Duration
。
DatatypeConstants.FIELD_UNDEFINED
值指示不设置字段。
isPositive
- 设置为 false
将创建负的 Duration。当 Duration 的长度为零时,将忽略此参数。year
- Duration
的年。month
- Duration
的月。
year
和 month
创建的新 Duration
。
IllegalArgumentException
- 如果值不是 Duration
的有效表示形式:如果这些字段(year 和 month)中的任何一个为负。public abstract XMLGregorianCalendar newXMLGregorianCalendar()
创建新的 XMLGregorianCalendar
实例。
设置为 DatatypeConstants.FIELD_UNDEFINED
或 null 的所有日期/时间数据类型字段。
XMLGregorianCalendar
,其所有日期/时间数据类型字段设置为 DatatypeConstants.FIELD_UNDEFINED
或 null。public abstract XMLGregorianCalendar newXMLGregorianCalendar(String lexicalRepresentation)
通过将字符串解析为词汇表示形式,创建新的 XMLGregorianCalendar。
在 XML Schema 1.0 Part 2, Section 3.2.[7-14].1, Lexical Representation 中定义了解析词汇字符串表示形式。
字符串表示形式不能存在任何前导和尾部空格。
逐字段执行解析,以便以下内容保存任何词汇正确的字符串 x:
newXMLGregorianCalendar(x).toXMLFormat().equals(x)
XML Schema 1.0 errata, Section 3.2.7.2 中列出的注释词汇/规范化表示形式不匹配的情况除外。
lexicalRepresentation
- 八个 XML 模式日期/时间数据数型之一的词汇表示形式。
lexicalRepresentation
创建的 XMLGregorianCalendar
。
IllegalArgumentException
- 如果 lexicalRepresentation
不是有效的 XMLGregorianCalendar
。
NullPointerException
- 如果 lexicalRepresentation
为 null
。public abstract XMLGregorianCalendar newXMLGregorianCalendar(GregorianCalendar cal)
根据 GregorianCalendar
创建 XMLGregorianCalendar
。
从 GregorianCalendar 到 XMLGregorianCalendar 的逐字段转换
|
|
---|---|
java.util.GregorianCalendar 字段 |
javax.xml.datatype.XMLGregorianCalendar 字段 |
ERA == GregorianCalendar.BC ? -YEAR :YEAR |
XMLGregorianCalendar.setYear(int year) |
MONTH + 1 |
XMLGregorianCalendar.setMonth(int month) |
DAY_OF_MONTH |
XMLGregorianCalendar.setDay(int day) |
HOUR_OF_DAY, MINUTE, SECOND, MILLISECOND |
XMLGregorianCalendar.setTime(int hour, int minute, int second, BigDecimal fractional) |
(ZONE_OFFSET + DST_OFFSET) / (60*1000) (以分为单位) |
XMLGregorianCalendar.setTimezone(int offset) *
|
* 转换丢失信息。不能以 XML 模式 1.0 日期/时间数据类型表示形式表示 java.util.GregorianCalendar
夏令时时区 id。
要计算返回值的 TimeZone
字段,
this.getTimezone() != FIELD_UNDEFINED
时,使用 this.getTimezone()
创建带有自定义时区 id 的 java.util.TimeZone
。GregorianCalendar
默认时区值按 java.util.TimeZone.getDefault()
指定的方式定义。
cal
- 用于创建 XMLGregorianCalendar
的 java.util.GregorianCalendar
。
java.util.GregorianCalendar
创建的 XMLGregorianCalendar
NullPointerException
- 如果 cal
为 null
。public abstract XMLGregorianCalendar newXMLGregorianCalendar(BigInteger year, int month, int day, int hour, int minute, int second, BigDecimal fractionalSecond, int timezone)
W3C XML 模式 1.0 推荐考虑完整值空间的构造方法,该方法用于 xsd:dateTime 和相关的内置数据类型。注意,year
参数支持任意大的数字,fractionalSecond 具有无限精度。
null
值指示不设置字段。
year
- 要创建的 XMLGregorianCalendar
的年。month
- 要创建的 XMLGregorianCalendar
的月。day
- 要创建的 XMLGregorianCalendar
的日。hour
- 要创建的 XMLGregorianCalendar
的时。minute
- 要创建的 XMLGregorianCalendar
的分。second
- 要创建的 XMLGregorianCalendar
的秒。fractionalSecond
- 要创建的 XMLGregorianCalendar
的 fractionalSecond。timezone
- 要创建的 XMLGregorianCalendar
的时区。
XMLGregorianCalendar
。
IllegalArgumentException
- 如果任一参数的值超出由 XMLGregorianCalendar
中词汇 Data Mapping 表确定的字段的最大值约束,或者复合值组成了 XMLGregorianCalendar.isValid()
确定为无效的 XMLGregorianCalendar
实例。public XMLGregorianCalendar newXMLGregorianCalendar(int year, int month, int day, int hour, int minute, int second, int millisecond, int timezone)
java.util.GregorianCalendar
实例需要转换为 XMLGregorianCalendar
实例的值空间的构造方法。
将 XMLGregorianCalendar eon
和 fractionalSecond
设置为 null
DatatypeConstants.FIELD_UNDEFINED
值指示不设置字段。
year
- 要创建的 XMLGregorianCalendar
的年。month
- 要创建的 XMLGregorianCalendar
的月。day
- 要创建的 XMLGregorianCalendar
的日。hour
- 要创建的 XMLGregorianCalendar
的时。minute
- 要创建的 XMLGregorianCalendar
的分。second
- 要创建的 XMLGregorianCalendar
的秒。millisecond
- 要创建的 XMLGregorianCalendar
的毫秒。timezone
- 要创建的 XMLGregorianCalendar
的时区。
XMLGregorianCalendar
。
IllegalArgumentException
- 如果任一参数的值超出由 XMLGregorianCalendar
中词汇 Data Mapping 表确定的字段的最大值约束,或者复合值组成了 XMLGregorianCalendar.isValid()
确定为无效的 XMLGregorianCalendar
实例。public XMLGregorianCalendar newXMLGregorianCalendarDate(int year, int month, int day, int timezone)
创建 XML 模式内置数据类型 date
或 g*
的 Java 表示形式。
例如,通过调用此工厂,并将 month
和 day
参数设置为 DatatypeConstants.FIELD_UNDEFINED
,可以创建 gYear
实例。
DatatypeConstants.FIELD_UNDEFINED
值指示不设置字段。
year
- 要创建的 XMLGregorianCalendar
的年。month
- 要创建的 XMLGregorianCalendar
的月。day
- 要创建的 XMLGregorianCalendar
的日。timezone
- 以分为单位的偏移量。DatatypeConstants.FIELD_UNDEFINED
指示未设置可选字段。
XMLGregorianCalendar
。
IllegalArgumentException
- 如果任一参数的值超出由 XMLGregorianCalendar
中词汇 Data Mapping 表确定的字段的最大值约束,或者复合值组成了 XMLGregorianCalendar.isValid()
确定为无效的 XMLGregorianCalendar
实例。DatatypeConstants.FIELD_UNDEFINED
public XMLGregorianCalendar newXMLGregorianCalendarTime(int hours, int minutes, int seconds, int timezone)
创建 XML 模式内置数据类型 time
的 Java 实例。
DatatypeConstants.FIELD_UNDEFINED
值指示不设置字段。
hours
- 小时数minutes
- 分钟数seconds
- 秒数timezone
- 以分钟为单位的偏移量。DatatypeConstants.FIELD_UNDEFINED
指示未设置可选字段。
XMLGregorianCalendar
。
IllegalArgumentException
- 如果任何单个参数的值超出由 XMLGregorianCalendar
中词汇 Data Mapping 表确定的字段的最大值约束,或者复合值组成了 XMLGregorianCalendar.isValid()
确定为无效的 XMLGregorianCalendar
实例。DatatypeConstants.FIELD_UNDEFINED
public XMLGregorianCalendar newXMLGregorianCalendarTime(int hours, int minutes, int seconds, BigDecimal fractionalSecond, int timezone)
创建 XML 模式内置数据类型 time 的 Java 实例。
null
值指示不设置字段。
DatatypeConstants.FIELD_UNDEFINED
值指示不设置字段。
hours
- 小时数minutes
- 分钟数seconds
- 秒数fractionalSecond
- null
的值,它指示未设置此可选字段。timezone
- 以分为单位的偏移量。DatatypeConstants.FIELD_UNDEFINED
指示未设置可选字段。
XMLGregorianCalendar
。
IllegalArgumentException
- 如果任一参数的值超出由 XMLGregorianCalendar
中词汇 Data Mapping 表确定的字段的最大值约束,或者复合值组成了 XMLGregorianCalendar.isValid()
确定为无效的 XMLGregorianCalendar
实例。DatatypeConstants.FIELD_UNDEFINED
public XMLGregorianCalendar newXMLGregorianCalendarTime(int hours, int minutes, int seconds, int milliseconds, int timezone)
创建 XML 模式内置数据类型 time 的 Java 实例。
DatatypeConstants.FIELD_UNDEFINED
值指示不设置字段。
hours
- 小时数minutes
- 分钟数seconds
- 秒数milliseconds
- 毫秒数timezone
- 以分钟为单位的偏移量。DatatypeConstants.FIELD_UNDEFINED
指示未设置可选字段。
XMLGregorianCalendar
。
IllegalArgumentException
- 如果任一参数的值超出由 XMLGregorianCalendar
中词汇 Data Mapping 表确定的字段的最大值约束,或者复合值了 XMLGregorianCalendar.isValid()
确定为无效的 XMLGregorianCalendar
实例。DatatypeConstants.FIELD_UNDEFINED
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。