JavaTM Platform
Standard Ed. 6

javax.xml.bind
インタフェース DatatypeConverterInterface


public interface DatatypeConverterInterface

DatatypeConverterInterface は、JAXB プロバイダのみによって使用されます。JAXB プロバイダは、このインタフェースを実装したクラスを提供する必要があります。JAXB プロバイダは、最初の整列化または非整列化操作が呼び出される前のある時点で (おそらく、JAXBContext.newInstance の呼び出し中)、DatatypeConverter.setDatatypeConverter API を呼び出す必要があります。このステップは、出力および解析機能を実行する上で使用すべきコンバータを設定するために必要になります。この API を繰り返し呼び出しても効果はありません。最初の呼び出しに渡された DatatypeConverter インスタンスが、それ以降使用されるインスタンスです。

このインタフェースは、解析メソッドおよび出力メソッドを定義します。JAXB 仕様のデフォルトバインディングテーブル 5-1 で指定された各 XML スキーマデータ型に対し、1 つの解析メソッドおよび出力メソッドがあります。

ここに定義する解析メソッドおよび出力メソッドは、DatatypeConverter クラスに定義された static 解析メソッドおよび出力メソッドによって呼び出されます。

XML スキーマデータ型用の解析メソッドは、『XML Schema Part2: Datatypes』に指定されている XML スキーマデータ型の字句表現を、XML スキーマデータ型の値領域内の値に変換できる必要があります。変換中にエラーが発生した場合、このメソッドは IllegalArgumentException、または、IllegalArgumentException のサブクラスをスローする必要があります。

XML スキーマデータ型の出力メソッドは、XML スキーマデータ型として有効な字句表現を出力可能です。変換中にエラーが発生した場合、このメソッドは IllegalArgumentException、または、IllegalArgumentException のサブクラスをスローする必要があります。

接頭辞 xsd: は、『XML Schema Part2: Datatypes』仕様に定義されている XML スキーマデータ型を参照するために使用されます。 

導入されたバージョン:
JAXB1.0
関連項目:
DatatypeConverter, ParseConversionEvent, PrintConversionEvent

メソッドの概要
 String parseAnySimpleType(String lexicalXSDAnySimpleType)
           単純型の字句表現を含む文字列を返します。
 byte[] parseBase64Binary(String lexicalXSDBase64Binary)
           文字列引数をバイト配列に変換します。
 boolean parseBoolean(String lexicalXSDBoolean)
           文字列引数を boolean 値に変換します。
 byte parseByte(String lexicalXSDByte)
           文字列引数を Qname 値に変換します。
 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)
           boolean 値を文字列に変換します。
 String printByte(byte val)
           byte 値を文字列に変換します。
 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 - lexicalXSDIntegerBigInteger 値の文字列表現として無効である場合

parseInt

int parseInt(String lexicalXSDInt)

文字列引数を int 値に変換します。

パラメータ:
lexicalXSDInt - xsd:int の字句表現を含む文字列
戻り値:
文字列引数が表す int 値
例外:
NumberFormatException - lexicalXSDIntint 値の文字列表現として無効である場合

parseLong

long parseLong(String lexicalXSDLong)

文字列引数を long 値に変換します。

パラメータ:
lexicalXSDLong - xsd:long の字句表現を含む文字列
戻り値:
文字列引数が表す long 値
例外:
NumberFormatException - lexicalXSDLonglong 値の文字列表現として無効である場合

parseShort

short parseShort(String lexicalXSDShort)

文字列引数を short 値に変換します。

パラメータ:
lexicalXSDShort - xsd:short の字句表現を含む文字列
戻り値:
文字列引数が表す short 値
例外:
NumberFormatException - lexicalXSDShortshort 値の文字列表現として無効である場合

parseDecimal

BigDecimal parseDecimal(String lexicalXSDDecimal)

文字列引数を BigDecimal 値に変換します。

パラメータ:
lexicalXSDDecimal - xsd:decimal の字句表現を含む文字列
戻り値:
文字列引数が表す BigDecimal 値
例外:
NumberFormatException - lexicalXSDDecimalBigDecimal の文字列表現として無効である場合

parseFloat

float parseFloat(String lexicalXSDFloat)

文字列引数を float 値に変換します。

パラメータ:
lexicalXSDFloat - xsd:float の字句表現を含む文字列
戻り値:
文字列引数が表す float 値
例外:
NumberFormatException - lexicalXSDFloatfloat 値の文字列表現として無効である場合

parseDouble

double parseDouble(String lexicalXSDDouble)

文字列引数を double 値に変換します。

パラメータ:
lexicalXSDDouble - xsd:double の字句表現を含む文字列
戻り値:
文字列引数が表す double 値
例外:
NumberFormatException - lexicalXSDDoubledouble 値の文字列表現として無効である場合

parseBoolean

boolean parseBoolean(String lexicalXSDBoolean)

文字列引数を boolean 値に変換します。

パラメータ:
lexicalXSDBoolean - xsd:boolean の字句表現を含む文字列
戻り値:
文字列引数が表す boolean 値
例外:
IllegalArgumentException - 文字列パラメータが『XML Schema Part 2: Datatypes』の xsd:boolean に関する仕様で定義された字句値領域に準拠していない場合

parseByte

byte parseByte(String lexicalXSDByte)

文字列引数を Qname 値に変換します。

パラメータ:
lexicalXSDByte - xsd:byte の字句表現を含む文字列
戻り値:
文字列引数が表す byte 値
例外:
NumberFormatException - lexicalXSDByte が解析可能な byte を含まない場合
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 の名前空間接頭辞が NamespaceContext nsc 内の URI にバインドされていない場合

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 - short 値
戻り値:
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 の字句表現を含む文字列

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。