Интерфейс DatatypeConverterInterface
public interface DatatypeConverterInterface
Интерфейс DatatypeConverterInterface предназначен только для использования поставщиками JAXB. Поставщик JAXB должен предоставить класс, реализующий этот интерфейс. Поставщики JAXB обязаны вызвать API DatatypeConverter.setDatatypeConverter в какой-то момент перед первой операцией маршализации или демаршализации (возможно, во время вызова JAXBContext.newInstance). Этот шаг необходим для конфигурации преобразователя, который должен использоваться для выполнения функций печати и разбора. Повторный вызов этого API не повлияет — экземпляр DatatypeConverter, переданный в первый вызов, будет использоваться в дальнейшем.
Этот интерфейс определяет методы разбора и печати. Существует по одному методу разбора и печати для каждого типа данных XML схемы, указанного в таблице стандартной привязки 5-1 в спецификации JAXB.
Методы разбора и печати, определенные здесь, вызываются статическими методами разбора и печати, определенными в классе DatatypeConverter.
Метод разбора для типа данных XML схемы должен уметь преобразовывать любое лексическое представление типа данных XML схемы (указанное в спецификации XML Schema Part2: Datatypes specification) в значение в пространстве значений типа данных XML схемы. Если при преобразовании возникает ошибка, метод должен бросить исключение IllegalArgumentException или подкласс IllegalArgumentException.
Метод печати для типа данных XML схемы может выводить любое лексическое представление, которое является допустимым с точки зрения типа данных XML схемы. Если при преобразовании возникает ошибка, метод должен бросить исключение IllegalArgumentException или подкласс IllegalArgumentException.
Префикс xsd: используется для обозначения типов данных XML схемы XML Schema Part2: Datatypes specification.- С:
- JAXB1.0
- См. также:
-
DatatypeConverter,ParseConversionEvent,PrintConversionEvent
Методы
| Модификатор и тип | Метод и описание |
|---|---|
String |
parseAnySimpleType(String lexicalXSDAnySimpleType) Возвращает строку, содержащую лексическое представление простого типа. |
byte[] |
parseBase64Binary(String lexicalXSDBase64Binary) Преобразует строковый аргумент в массив байтов. |
boolean |
parseBoolean(String lexicalXSDBoolean) Преобразует строковый аргумент в булево значение. |
byte |
parseByte(String lexicalXSDByte) Преобразует строковый аргумент в байтовое значение. |
Calendar |
parseDate(String lexicalXSDDate) Преобразует строковый аргумент в значение Calendar. |
Calendar |
parseDateTime(String lexicalXSDDateTime) Преобразует строковый аргумент в значение Calendar. |
BigDecimal |
parseDecimal(String lexicalXSDDecimal) Преобразует строковый аргумент в значение BigDecimal. |
double |
parseDouble(String lexicalXSDDouble) Преобразует строковый аргумент в значение double. |
float |
parseFloat(String lexicalXSDFloat) Преобразует строковый аргумент в значение float. |
byte[] |
parseHexBinary(String lexicalXSDHexBinary) Преобразует строковый аргумент в массив байтов. |
int |
parseInt(String lexicalXSDInt) Преобразует строковый аргумент в значение int. |
BigInteger |
parseInteger(String lexicalXSDInteger) Преобразует строковый аргумент в значение BigInteger. |
long |
parseLong(String lexicalXSDLong) Преобразует строковый аргумент в значение long. |
QName |
parseQName(String lexicalXSDQName,
NamespaceContext nsc) Преобразует строковый аргумент в значение QName. |
short |
parseShort(String lexicalXSDShort) Преобразует строковый аргумент в значение short. |
String |
parseString(String lexicalXSDString) Преобразует строковый аргумент в строку. |
Calendar |
parseTime(String lexicalXSDTime) Преобразует строковый аргумент в значение Calendar. |
long |
parseUnsignedInt(String lexicalXSDUnsignedInt) Преобразует строковый аргумент в значение long. |
int |
parseUnsignedShort(String lexicalXSDUnsignedShort) Преобразует строковый аргумент в значение int. |
String |
printAnySimpleType(String val) Преобразует строку в строку. |
String |
printBase64Binary(byte[] val) Преобразует массив байтов в строку. |
String |
printBoolean(boolean val) Преобразует булево значение в строку. |
String |
printByte(byte val) Преобразует байтовое значение в строку. |
String |
printDate(Calendar val) Преобразует значение Calendar в строку. |
String |
printDateTime(Calendar val) Преобразует значение Calendar в строку. |
String |
printDecimal(BigDecimal val) Преобразует значение BigDecimal в строку. |
String |
printDouble(double val) Преобразует значение double в строку. |
String |
printFloat(float val) Преобразует значение float в строку. |
String |
printHexBinary(byte[] val) Преобразует массив байтов в строку. |
String |
printInt(int val) Преобразует значение int в строку. |
String |
printInteger(BigInteger val) Преобразует значение BigInteger в строку. |
String |
printLong(long val) Преобразует значение long в строку. |
String |
printQName(QName val,
NamespaceContext nsc) Преобразует экземпляр QName в строку. |
String |
printShort(short val) Преобразует значение short в строку. |
String |
printString(String val) Преобразует строковый аргумент в строку. |
String |
printTime(Calendar val) Преобразует значение Calendar в строку. |
String |
printUnsignedInt(long val) Преобразует значение long в строку. |
String |
printUnsignedShort(int val) Преобразует значение int в строку. |
Методы
parseString
String parseString(String lexicalXSDString)
Преобразует строковый аргумент в строку.
- Параметры:
-
lexicalXSDString- Лексическое представление типа данных XML Schema xsd:string - Возвращает:
- Строку, идентичную входной строке.
parseInteger
BigInteger parseInteger(String lexicalXSDInteger)
Преобразует строковый аргумент в значение BigInteger.
- Параметры:
-
lexicalXSDInteger- Строка, содержащая лексическое представление xsd:integer. - Возвращает:
- Значение BigInteger, представленное строковым аргументом.
- Исключения:
-
NumberFormatException-lexicalXSDIntegerне является допустимым строковым представлением значенияBigInteger.
parseInt
int parseInt(String lexicalXSDInt)
Преобразует строковый аргумент в значение int.
- Параметры:
-
lexicalXSDInt- Строка, содержащая лексическое представление xsd:int. - Возвращает:
- Значение int, представленное строковым аргументом.
- Исключения:
-
NumberFormatException-lexicalXSDIntне является допустимым строковым представлением значенияint.
parseLong
long parseLong(String lexicalXSDLong)
Преобразует строковый аргумент в значение long.
- Параметры:
-
lexicalXSDLong- Строка, содержащая лексическое представление xsd:long. - Возвращает:
- Значение long, представленное строковым аргументом.
- Исключения:
-
NumberFormatException-lexicalXSDLongне является допустимым строковым представлением значенияlong.
parseShort
short parseShort(String lexicalXSDShort)
Преобразует строковый аргумент в значение short.
- Параметры:
-
lexicalXSDShort- Строка, содержащая лексическое представление xsd:short. - Возвращает:
- Значение short, представленное строковым аргументом.
- Исключения:
-
NumberFormatException-lexicalXSDShortне является допустимым строковым представлением значенияshort.
parseDecimal
BigDecimal parseDecimal(String lexicalXSDDecimal)
Преобразует строковый аргумент в значение BigDecimal.
- Параметры:
-
lexicalXSDDecimal- Строка, содержащая лексическое представление xsd:decimal. - Возвращает:
- Значение BigDecimal, представленное строковым аргументом.
- Исключения:
-
NumberFormatException-lexicalXSDDecimalне является допустимым строковым представлениемBigDecimal.
parseFloat
float parseFloat(String lexicalXSDFloat)
Преобразует строковый аргумент в значение float.
- Параметры:
-
lexicalXSDFloat- Строка, содержащая лексическое представление xsd:float. - Возвращает:
- Значение float, представленное строковым аргументом.
- Исключения:
-
NumberFormatException-lexicalXSDFloatне является допустимым строковым представлением значенияfloat.
parseDouble
double parseDouble(String lexicalXSDDouble)
Преобразует строковый аргумент в значение double.
- Параметры:
-
lexicalXSDDouble- Строка, содержащая лексическое представление xsd:double. - Возвращает:
- Значение double, представленное строковым аргументом.
- Исключения:
-
NumberFormatException-lexicalXSDDoubleне является допустимым строковым представлением значенияdouble.
parseBoolean
boolean parseBoolean(String lexicalXSDBoolean)
Преобразует строковый аргумент в значение boolean.
- Параметры:
-
lexicalXSDBoolean- Строка, содержащая лексическое представление xsd:boolean. - Возвращает:
- Значение boolean, представленное строковым аргументом.
- Исключения:
-
IllegalArgumentException- если строковый параметр не соответствует лексическому пространству значений, определенному в XML Schema Part 2: Datatypes для xsd:boolean.
parseByte
byte parseByte(String lexicalXSDByte)
Преобразует строковый аргумент в значение byte.
- Параметры:
-
lexicalXSDByte- Строка, содержащая лексическое представление xsd:byte. - Возвращает:
- Значение byte, представленное строковым аргументом.
- Исключения:
-
NumberFormatException-lexicalXSDByteне содержит байт, который можно разобрать. -
IllegalArgumentException- если строковый параметр не соответствует лексическому пространству значений, определенному в XML Schema Part 2: Datatypes для xsd:byte.
parseQName
QName parseQName(String lexicalXSDQName,
NamespaceContext nsc) Преобразует строковый аргумент в значение QName.
Строковый параметр lexicalXSDQname должен соответствовать лексическому пространству значений, указанному в XML Schema Part 2:Datatypes specification:QNames
- Параметры:
-
lexicalXSDQName- Строка, содержащая лексическое представление xsd:QName. -
nsc- Контекст пространства имен для интерпретации префикса в QName. - Возвращает:
- Значение QName, представленное строковым аргументом.
- Исключения:
-
IllegalArgumentException- если строковый параметр не соответствует спецификации XML Schema Part 2 или если префикс пространства именlexicalXSDQnameне привязан к URI в NamespaceContextnsc.
parseDateTime
Calendar parseDateTime(String lexicalXSDDateTime)
Преобразует строковый аргумент в значение Calendar.
- Параметры:
-
lexicalXSDDateTime- Строка, содержащая лексическое представление xsd:datetime. - Возвращает:
- Объект Calendar, представленный строковым аргументом.
- Исключения:
-
IllegalArgumentException- если строковый параметр не соответствует лексическому пространству значений, определенному в XML Schema Part 2: Datatypes для xsd:dateTime.
parseBase64Binary
byte[] parseBase64Binary(String lexicalXSDBase64Binary)
Преобразует строковый аргумент в массив байтов.
- Параметры:
-
lexicalXSDBase64Binary- Строка, содержащая лексическое представление xsd:base64Binary. - Возвращает:
- Массив байтов, представленный строковым аргументом.
- Исключения:
-
IllegalArgumentException- если строковый параметр не соответствует лексическому пространству значений, определенному в XML Schema Part 2: Datatypes для xsd:base64Binary
parseHexBinary
byte[] parseHexBinary(String lexicalXSDHexBinary)
Преобразует строковый аргумент в массив байтов.
- Параметры:
-
lexicalXSDHexBinary- Строка, содержащая лексическое представление xsd:hexBinary. - Возвращает:
- Массив байтов, представленный строковым аргументом.
- Исключения:
-
IllegalArgumentException- если строковый параметр не соответствует лексическому пространству значений, определенному в XML Schema Part 2: Datatypes для xsd:hexBinary.
parseUnsignedInt
long parseUnsignedInt(String lexicalXSDUnsignedInt)
Преобразует строковый аргумент в значение long.
- Параметры:
-
lexicalXSDUnsignedInt- Строка, содержащая лексическое представление xsd:unsignedInt. - Возвращает:
- Значение long, представленное строковым аргументом.
- Исключения:
-
NumberFormatException- если строковый параметр не может быть разобран в значениеlong.
parseUnsignedShort
int parseUnsignedShort(String lexicalXSDUnsignedShort)
Преобразует строковый аргумент в значение int.
- Параметры:
-
lexicalXSDUnsignedShort- Строка, содержащая лексическое представление xsd:unsignedShort. - Возвращает:
- Значение int, представленное строковым аргументом.
- Исключения:
-
NumberFormatException- если строковый параметр не может быть разобран в значениеint.
parseTime
Calendar parseTime(String lexicalXSDTime)
Преобразует строковый аргумент в значение Calendar.
- Параметры:
-
lexicalXSDTime- Строка, содержащая лексическое представление xsd:Time. - Возвращает:
- Значение Calendar, представленное строковым аргументом.
- Исключения:
-
IllegalArgumentException- если строковый параметр не соответствует лексическому пространству значений, определенному в XML Schema Part 2: Datatypes для xsd:Time.
parseDate
Calendar parseDate(String lexicalXSDDate)
Преобразует строковый аргумент в значение Calendar.
- Параметры:
-
lexicalXSDDate- Строка, содержащая лексическое представление xsd:Date. - Возвращает:
- Значение Calendar, представленное строковым аргументом.
- Исключения:
-
IllegalArgumentException- если строковый параметр не соответствует лексическому пространству значений, определенному в XML Schema Part 2: Datatypes для xsd:Date.
parseAnySimpleType
String parseAnySimpleType(String lexicalXSDAnySimpleType)
Возвращает строку, содержащую лексическое представление простого типа.
- Параметры:
-
lexicalXSDAnySimpleType- Строка, содержащая лексическое представление простого типа. - Возвращает:
- Строка, содержащая лексическое представление простого типа.
printString
String printString(String val)
Преобразует строковый аргумент в строку.
- Параметры:
-
val- Строковое значение. - Возвращает:
- Строка, содержащая лексическое представление xsd:string
printInteger
String printInteger(BigInteger val)
Преобразует значение BigInteger в строку.
- Параметры:
-
val- Значение BigInteger - Возвращает:
- Строка, содержащая лексическое представление xsd:integer
- Исключения:
-
IllegalArgumentException-valимеет значение null.
printInt
String printInt(int val)
Преобразует значение int в строку.
- Параметры:
-
val- Значение int - Возвращает:
- Строка, содержащая лексическое представление xsd:int
printLong
String printLong(long val)
Преобразует значение long в строку.
- Параметры:
-
val- Значение long - Возвращает:
- Строка, содержащая лексическое представление xsd:long
printShort
String printShort(short val)
Преобразует значение short в строку.
- Параметры:
-
val- Короткое значение - Возвращает:
- Строка, содержащая лексическое представление xsd:short
printDecimal
String printDecimal(BigDecimal val)
Преобразует значение BigDecimal в строку.
- Параметры:
-
val- Значение BigDecimal - Возвращает:
- Строка, содержащая лексическое представление xsd:decimal
- Выбрасывает:
-
IllegalArgumentException-valравно null.
printFloat
String printFloat(float val)
Преобразует значение float в строку.
- Параметры:
-
val- Значение float - Возвращает:
- Строка, содержащая лексическое представление xsd:float
printDouble
String printDouble(double val)
Преобразует значение double в строку.
- Параметры:
-
val- Значение double - Возвращает:
- Строка, содержащая лексическое представление xsd:double
printBoolean
String printBoolean(boolean val)
Преобразует значение boolean в строку.
- Параметры:
-
val- Значение boolean - Возвращает:
- Строка, содержащая лексическое представление xsd:boolean
printByte
String printByte(byte val)
Преобразует значение byte в строку.
- Параметры:
-
val- Значение byte - Возвращает:
- Строка, содержащая лексическое представление xsd:byte
printQName
String printQName(QName val,
NamespaceContext nsc) Преобразует экземпляр QName в строку.
- Параметры:
-
val- Значение QName -
nsc- Контекст пространства имен для интерпретации префикса в QName. - Возвращает:
- Строка, содержащая лексическое представление QName
- Выбрасывает:
-
IllegalArgumentException- еслиvalравно null или еслиnscне null илиnsc.getPrefix(nsprefixFromVal)равно null.
printDateTime
String printDateTime(Calendar val)
Преобразует значение Calendar в строку.
- Параметры:
-
val- Значение Calendar - Возвращает:
- Строка, содержащая лексическое представление xsd:dateTime
- Выбрасывает:
-
IllegalArgumentException- еслиvalравно null.
printBase64Binary
String printBase64Binary(byte[] val)
Преобразует массив байтов в строку.
- Параметры:
-
val- Массив байтов - Возвращает:
- Строка, содержащая лексическое представление xsd:base64Binary
- Выбрасывает:
-
IllegalArgumentException- еслиvalравно null.
printHexBinary
String printHexBinary(byte[] val)
Преобразует массив байтов в строку.
- Параметры:
-
val- Массив байтов - Возвращает:
- Строка, содержащая лексическое представление xsd:hexBinary
- Выбрасывает:
-
IllegalArgumentException- еслиvalравно null.
printUnsignedInt
String printUnsignedInt(long val)
Преобразует значение long в строку.
- Параметры:
-
val- Значение long - Возвращает:
- Строка, содержащая лексическое представление xsd:unsignedInt
printUnsignedShort
String printUnsignedShort(int val)
Преобразует значение int в строку.
- Параметры:
-
val- Значение int - Возвращает:
- Строка, содержащая лексическое представление xsd:unsignedShort
printTime
String printTime(Calendar val)
Преобразует значение Calendar в строку.
- Параметры:
-
val- Значение Calendar - Возвращает:
- Строка, содержащая лексическое представление xsd:time
- Выбрасывает:
-
IllegalArgumentException- еслиvalравно null.
printDate
String printDate(Calendar val)
Преобразует значение Calendar в строку.
- Параметры:
-
val- Значение Calendar - Возвращает:
- Строка, содержащая лексическое представление xsd:date
- Выбрасывает:
-
IllegalArgumentException- еслиvalравно null.
printAnySimpleType
String printAnySimpleType(String val)
Преобразует значение строки в строку.
- Параметры:
-
val- Значение строки - Возвращает:
- Строка, содержащая лексическое представление xsd:AnySimpleType
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.