|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요 : 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
java.lang.Objectjava.text.Format
java.text.MessageFormat
public class MessageFormat
MessageFormat
는, 연결된 메세지를, 언어에 의존하지 않는 방법으로 구축하기 위한의 것입니다. 최종 사용자용으로 표시하는 메세지는, 이 방법으로 구축해 주세요.
MessageFormat
는, 1 조의 객체를 포맷 해, 포맷 한 캐릭터 라인을 패턴의 적절한 장소에 삽입합니다.
주: MessageFormat
가 다른 Format
클래스와 다른 점은,MessageFormat
객체를 (getInstance
스타일의 팩토리 메소드는 아니고) 그 생성자 의 1 개로 작성한다고 하는 것입니다. MessageFormat
에서는, 로케일 고유의 동작은 구현되어 있지 않기 때문에, 팩토리 메소드는 필요 없습니다. 로케일 고유의 동작은, 제공하는 패턴 및 삽입된 인수에 사용하는 서브 포맷에 의해 정의됩니다.
MessageFormat
는 다음의 패턴을 사용합니다.
MessageFormatPattern: String MessageFormatPattern FormatElement String FormatElement: { ArgumentIndex } { ArgumentIndex , FormatType } { ArgumentIndex , FormatType , FormatStyle } FormatType: one of number date time choice FormatStyle: short medium long full integer currency percent SubformatPattern String: StringPartopt String StringPart StringPart: '' ' QuotedString ' UnquotedString SubformatPattern: SubformatPatternPartopt SubformatPattern SubformatPatternPart SubFormatPatternPart: ' QuotedPattern ' UnquotedPattern
String 내에서는, 「''
」는 단일 인용부호를 나타냅니다. QuotedString 는 단일 인용부호를 제외한 임의의 문자를 포함합니다. 둘러싸고 있는 단일 인용부호는 삭제됩니다. UnquotedString 는, 단일 인용부호와 왼쪽대괄호를 제외한 임의의 문자를 포함합니다. 따라서, 포맷 된 메세지로 「'{0}'」가 되는 캐릭터 라인은, 「'''{'0}''
」또는 「'''{0}'''
」(이)라고 기술합니다.
SubformatPattern 내에서는 다른 룰이 적용됩니다. QuotedPattern 는 단일 인용부호 이외의 임의의 문자를 포함합니다만, 둘러싸고 있는 단일 인용부호는 삭제되지 않습니다. 이 때문에 단일 인용부호는 서브 포맷에 의해 해석됩니다. 예를 들어, 「{1, number,$'#',##}
」(이)라고 지정하면(자), 해시 기호 (#)가 붙은 수치 포맷이 생성됩니다. 결과는, 「$#31, 45」와 같이 됩니다. "$#31, 45". UnquotedPattern 는, 단일 인용부호 이외의 임의의 문자를 포함합니다만, 그 중안괄호는 페어가 되어 있을 필요가 있습니다. 예를 들어, 「ab {0} de
」와「ab '}' de
」는 유효한 서브 포맷 패턴입니다만, 「ab {0'}' de
」와「ab } de
」는 무효입니다.
ArgumentIndex 치는, 숫자 0 ~ 9 를 사용해 기술한 0 이상의 정수입니다. format
메소드에게 건네진 arguments
배열 또는 parse
메소드에 의해 반환된 결과의 배열의 인덱스를 나타냅니다.
FormatType 및 FormatStyle 치는, 포맷 요소의 Format
인스턴스의 생성에 사용합니다. 다음의 겉(표)에, Format 인스턴스에의 값의 맵에 대해 가리킵니다. 겉(표)에 없는 편성은 사용할 수 없습니다. SubformatPattern 는, 사용하는 Format 서브 클래스에 대해서 유효한 패턴 캐릭터 라인이 아니면 안됩니다.
포맷형 | 포맷 스타일 | 생성되는 서브 포맷 |
---|---|---|
(없음) | (없음) | null
|
number
| (없음) | NumberFormat.getInstance(getLocale())
|
integer
| NumberFormat.getIntegerInstance(getLocale())
| |
currency
| NumberFormat.getCurrencyInstance(getLocale())
| |
percent
| NumberFormat.getPercentInstance(getLocale())
| |
SubformatPattern | new DecimalFormat(subformatPattern, DecimalFormatSymbols.getInstance(getLocale()))
| |
date
| (없음) | DateFormat.getDateInstance(DateFormat.DEFAULT, getLocale())
|
short
| DateFormat.getDateInstance(DateFormat.SHORT, getLocale())
| |
medium
| DateFormat.getDateInstance(DateFormat.DEFAULT, getLocale())
| |
long
| DateFormat.getDateInstance(DateFormat.LONG, getLocale())
| |
full
| DateFormat.getDateInstance(DateFormat.FULL, getLocale())
| |
SubformatPattern | new SimpleDateFormat(subformatPattern, getLocale())
| |
time
| (없음) | DateFormat.getTimeInstance(DateFormat.DEFAULT, getLocale())
|
short
| DateFormat.getTimeInstance(DateFormat.SHORT, getLocale())
| |
medium
| DateFormat.getTimeInstance(DateFormat.DEFAULT, getLocale())
| |
long
| DateFormat.getTimeInstance(DateFormat.LONG, getLocale())
| |
full
| DateFormat.getTimeInstance(DateFormat.FULL, getLocale())
| |
SubformatPattern | new SimpleDateFormat(subformatPattern, getLocale())
| |
choice
| SubformatPattern | new ChoiceFormat(subformatPattern)
|
다음에 몇개의 사용예를 나타냅니다. 물론 실제의 국제화 된 프로그램에서는, 메세지 포맷 패턴이나 그 외의 정적인 캐릭터 라인은 자원 번들로부터 취득됩니다. 그 외의 파라미터는 실행시에 동적으로 결정됩니다.
최초의 예에서는, static 메소드 MessageFormat.format
를 사용하고 있습니다. 이 메소드는 내부적으로, 1 번 한정의 사용 목적으로 MessageFormat
인스턴스를 작성합니다.
출력 결과는 다음과 같이 됩니다.int planet = 7; String event = "a disturbance in the Force"; String result = MessageFormat.format( "At {1, time} on {1, date}, there was {2} on planet {0, number, integer}. ", planet, new Date(), event);
At 12:30 PM on Jul 3, 2053, there was a disturbance in the Force on planet 7.
다음의 예에서는, 반복 사용 가능한 MessageFormat
인스턴스를 작성합니다.
int fileCount = 1273; String diskName = "MyDisk"; Object[] testArgs = {new Long(fileCount), diskName}; MessageFormat form = new MessageFormat( "The disk \"{1}\" contains {0} file(s). "); System.out.println(form.format(testArgs));
fileCount
에 다양한 값을 설정했을 경우의 출력 결과를 다음에 나타냅니다.
The disk "MyDisk" contains 0 file(s). The disk "MyDisk" contains 1 file(s). The disk "MyDisk" contains 1,273 file(s).
보다 고도의 패턴을 실현하고 싶다면,ChoiceFormat
를 사용하는 것으로, 단수와 복수에 대해서 각각 적절한 형식을 생성할 수 있습니다.
MessageFormat form = new MessageFormat("The disk \"{1}\" contains {0}. "); double[] filelimits = {0,1,2}; String[] filepart = {"no files","one file","{0, number} files"}; ChoiceFormat fileform = new ChoiceFormat(filelimits, filepart); form.setFormatByArgumentIndex(0, fileform); int fileCount = 1273; String diskName = "MyDisk"; Object[] testArgs = {new Long(fileCount), diskName}; System.out.println(form.format(testArgs));
fileCount
에 다양한 값을 설정했을 경우의 출력 결과를 다음에 나타냅니다.
The disk "MyDisk" contains no files. The disk "MyDisk" contains one file. The disk "MyDisk" contains 1,273 files.
위의 예의 같게 ChoiceFormat
를 프로그램적으로 작성할 수 있습니다만, 다음과 같이 패턴을 사용할 수도 있습니다. 자세한 것은 ChoiceFormat
를 참조해 주세요.
form.applyPattern( "There {0, choice, 0#are no files|1#is one file|1<are {0, number, integer} files}. ");
주: 상기로부터 알도록(듯이),MessageFormat
의 ChoiceFormat
에 의해 생성되는 캐릭터 라인의 취급은 꽤 특수합니다. 「{」의 존재에 의해 서브 포맷인 것을 나타내, 재귀 처리를 행하고 있습니다. MessageFormat 와 ChoiceFormat
를 양쪽 모두 (캐릭터 라인 패턴으로서가 아니게) 프로그램적으로 작성하는 경우에는, 재귀적으로 반복하는 포맷을 작성해 영구 루프에 빠지지 않게 주의해 주세요.
1 개의 인수가 캐릭터 라인내에서 여러 차례 해석되면(자), 마지막에 일치하는 것이 해석의 최종 결과가 됩니다. 다음에 예를 나타냅니다.
MessageFormat mf = new MessageFormat("{0, number,#. ##}, {0, number,#. #}"); Object[] objs = {new Double(3.1415)}; String result = mf.format( objs ); // result now equals "3.14, 3.1" objs = null; objs = mf.parse(result, new ParsePosition(0)); // objs now equals {new Double(3.1)}
같이 같은 인수가 여러 차례 나오는 패턴을 사용해 MessageFormat 객체를 해석하면(자), 마지막에 일치하는 것이 돌려주어집니다. 다음에 예를 나타냅니다.
MessageFormat mf = new MessageFormat("{0}, {0}, {0}"); String forParsing = "x, y, z"; Object[] objs = mf.parse(forParsing, new ParsePosition(0)); // result now equals {new String("z")}
메세지 포맷은 동기화 되지 않습니다. thread 마다 다른 포맷 인스턴스를 작성하는 것을 추천합니다. 복수의 thread가 포맷에 동시에 액세스 하는 경우는, 외부적으로 동기화할 필요가 있습니다.
Locale
,
Format
,
NumberFormat
,
DecimalFormat
,
ChoiceFormat
,
직렬화 된 형식 상자의 클래스의 개요 | |
---|---|
static class |
MessageFormat.Field
MessageFormat.formatToCharacterIterator 로부터 반환된 AttributedCharacterIterator 내의 속성 키로서 사용하는 정수를 정의합니다. |
생성자 의 개요 | |
---|---|
MessageFormat (String pattern)
디폴트 로케일과 지정된 패턴을 위한 MessageFormat 를 구축합니다. |
|
MessageFormat (String pattern,
Locale locale)
지정된 로케일과 패턴을 위한 MessageFormat 를 구축합니다. |
메소드의 개요 | |
---|---|
void |
applyPattern (String pattern)
이 메세지 포맷에 의해 사용되는 패턴을 설정합니다. |
Object |
clone ()
이 객체의 카피를 작성해, 돌려줍니다. |
boolean |
equals (Object obj)
2 개의 메세지 포맷 객체의 사이의 등호 비교입니다. |
StringBuffer |
format (Object [] arguments,
StringBuffer result,
FieldPosition pos)
객체의 배열을 포맷 해, 제공된 StringBuffer 에, 포맷 요소를 포맷 된 객체에 의해 옮겨놓아 MessageFormat 의 패턴을 추가합니다. |
StringBuffer |
format (Object arguments,
StringBuffer result,
FieldPosition pos)
객체의 배열을 포맷 해, 제공된 StringBuffer 에, 포맷 요소를 포맷 된 객체에 의해 옮겨놓아 MessageFormat 의 패턴을 추가합니다. |
static String |
format (String pattern,
Object ... arguments)
지정된 패턴을 사용해 MessageFormat 를 작성해, 그것을 사용해 지정된 인수를 포맷 합니다. |
AttributedCharacterIterator |
formatToCharacterIterator (Object arguments)
객체의 배열을 포맷 해, 그것을 MessageFormat 의 패턴에 삽입해,AttributedCharacterIterator 를 생성합니다. |
Format [] |
getFormats ()
미리 설정된 패턴 캐릭터 라인내의 포맷 요소에 사용되는 포맷을 가져옵니다. |
Format [] |
getFormatsByArgumentIndex ()
format 메소드에게 건네지는 값 또는 parse 메소드로부터 반환된 값에 사용되는 포맷을 가져옵니다. |
Locale |
getLocale ()
서브 포맷을 작성 또는 비교하는 경우에 사용되는 로케일을 가져옵니다. |
int |
hashCode ()
메세지 포맷 객체의 해시 코드를 생성합니다. |
Object [] |
parse (String source)
지정된 캐릭터 라인의 선두로부터 텍스트를 해석해 객체 배열을 생성합니다. |
Object [] |
parse (String source,
ParsePosition pos)
캐릭터 라인을 해석합니다. |
Object |
parseObject (String source,
ParsePosition pos)
캐릭터 라인으로부터 텍스트를 해석해 객체 배열을 생성합니다. |
void |
setFormat (int formatElementIndex,
Format newFormat)
미리 설정된 패턴 캐릭터 라인내의 지정된 포맷 요소 인덱스로, 포맷 요소에 사용하는 포맷을 설정합니다. |
void |
setFormatByArgumentIndex (int argumentIndex,
Format newFormat)
지정된 인수 인덱스를 사용한다, 미리 설정된 패턴 캐릭터 라인내의 포맷 요소에 사용하는 포맷을 설정합니다. |
void |
setFormats (Format [] newFormats)
미리 설정된 패턴 캐릭터 라인내의 포맷 요소에 사용하는 포맷을 설정합니다. |
void |
setFormatsByArgumentIndex (Format [] newFormats)
format 메소드에게 건네지는 값 또는 parse 메소드로부터 반환된 값에 사용하는 포맷을 설정합니다. |
void |
setLocale (Locale locale)
서브 포맷을 작성 또는 비교하는 경우에 사용하는 로케일을 설정합니다. |
String |
toPattern ()
메세지 포맷의 현재 상태를 나타내는 패턴을 돌려줍니다. |
클래스 java.text. Format 로부터 상속된 메소드 |
---|
format , parseObject |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
finalize , getClass , notify , notifyAll , toString , wait , wait , wait |
생성자 의 상세 |
---|
public MessageFormat(String pattern)
pattern
- 이 메세지 포맷을 위한 패턴
IllegalArgumentException
- 패턴이 무효인 경우public MessageFormat(String pattern, Locale locale)
pattern
- 이 메세지 포맷을 위한 패턴locale
- 이 메세지 포맷을 위한 로케일
IllegalArgumentException
- 패턴이 무효인 경우메소드의 상세 |
---|
public void setLocale(Locale locale)
applyPattern
메소드와 toPattern
메소드 (포맷 요소가 포맷형을 지정하고 있어, 그 때문에 서브 포맷이 applyPattern
메소드로 작성되는 경우)
format
메소드와 formatToCharacterIterator
메소드 (포맷 요소가 포맷형을 지정하고 있지 않고, 그 때문에 서브 포맷이 이러한 서식 설정 메소드로 작성되는 경우)
locale
- 서브 포맷을 작성 또는 비교하는 경우에 사용하는 로케일public Locale getLocale()
public void applyPattern(String pattern)
pattern
- 이 메세지 포맷을 위한 패턴
IllegalArgumentException
- 패턴이 무효인 경우public String toPattern()
public void setFormatsByArgumentIndex(Format [] newFormats)
format
메소드에게 건네지는 값 또는 parse
메소드로부터 반환된 값에 사용하는 포맷을 설정합니다. newFormats
내의 요소의 인덱스는, 미리 설정된 패턴 캐릭터 라인으로 사용되는 인수 인덱스에 대응합니다. 따라서,newFormats
내의 포맷의 순서는 format
메소드에게 건네진 arguments
배열 또는 parse
메소드에 의해 반환된 결과의 배열내의 요소의 순서에 대응합니다.
인수 인덱스가 패턴 캐릭터 라인내에서 복수의 포맷 요소에 사용되는 경우, 대응하는 새로운 포맷이 그 모든 포맷 요소에 사용됩니다. 인수 인덱스가 캐릭터 라인내에서 어느 포맷 요소에도 사용되지 않는 경우는, 대응하는 새로운 포맷은 무시됩니다. 제공된 포맷이 필요수에 못 미친 경우,newFormats.length
보다 적은 인수 인덱스에 대한 포맷만이 옮겨놓을 수 있습니다.
newFormats
- 사용하는 새로운 포맷
NullPointerException
- newFormats
가 null 의 경우public void setFormats(Format [] newFormats)
newFormats
내의 포맷의 순서는, 패턴 캐릭터 라인내의 포맷 요소의 순서에 대응합니다.
패턴 캐릭터 라인으로 필요로 하는 것보다도 많은 포맷이 제공되었을 경우, 남은 포맷은 무시됩니다. 필요수에 못 미친 경우는, 최초의 newFormats.length
만이 옮겨놓을 수 있습니다.
패턴 캐릭터 라인내의 포맷 요소의 순서는 지역 대응화의 처리 과정에서 변경되는 것이 많기 때문에, 일반적으로은 setFormatsByArgumentIndex
메소드를 사용하는 편이 효율적입니다. 이 메소드는, 포맷의 순서를 format
메소드에게 건네진 arguments
배열 또는 parse
메소드에 의해 반환된 결과의 배열내의 요소의 순서에 대응하는 것이라고 봅니다.
newFormats
- 사용하는 새로운 포맷
NullPointerException
- newFormats
가 null 의 경우public void setFormatByArgumentIndex(int argumentIndex, Format newFormat)
format
메소드에게 건네진 arguments
배열 또는 parse
메소드에 의해 반환된 결과의 배열의 인덱스를 나타냅니다. 인수 인덱스가 패턴 캐릭터 라인내에서 복수의 포맷 요소에 사용되는 경우, 새로운 포맷이 그 모든 포맷 요소에 사용됩니다. 인수 인덱스가 캐릭터 라인내에서 어느 포맷 요소에도 사용되지 않는 경우는, 새로운 포맷은 무시됩니다.
argumentIndex
- 새로운 포맷에 사용하기 위한 인수 인덱스newFormat
- 사용하는 새로운 포맷public void setFormat(int formatElementIndex, Format newFormat)
패턴 캐릭터 라인내의 포맷 요소의 순서는, 지역 대응화의 처리 과정에서 변경되는 것이 많기 때문에, 일반적으로은 setFormatByArgumentIndex
메소드를 사용하는 편이 효율적입니다. 이 메소드는, 포맷 요소가 지정하는 인수 인덱스를 기본으로, 포맷 요소에 액세스 합니다.
formatElementIndex
- 패턴내의 포맷 요소의 인덱스newFormat
- 지정된 포맷 요소에 사용하는 포맷
ArrayIndexOutOfBoundsException
- formatElementIndex 가,
패턴 캐릭터 라인내의 포맷 요소의 수이상의 경우public Format [] getFormatsByArgumentIndex()
format
메소드에게 건네지는 값 또는 parse
메소드로부터 반환된 값에 사용되는 포맷을 가져옵니다. 반환된 배열내의 요소의 인덱스는, 미리 설정된 패턴 캐릭터 라인으로 사용되는 인수 인덱스에 대응합니다. 따라서, 반환된 배열내의 포맷의 순서는,format
메소드에게 건네진 arguments
배열 또는 parse
메소드에 의해 반환된 결과의 배열내의 요소의 순서에 대응합니다. 인수 인덱스가 패턴 캐릭터 라인내에서 복수의 포맷 요소에 사용되는 경우, 그 마지막 포맷 요소로 사용되는 포맷이 배열에 돌려주어집니다. 인수 인덱스가 캐릭터 라인내에서 어느 포맷 요소에도 사용되지 않는 경우는, null 가 배열에 돌려주어집니다.
public Format [] getFormats()
패턴 캐릭터 라인내의 포맷 요소의 순서는 지역 대응화의 처리 과정에서 변경되는 것이 많기 때문에, 일반적으로은 getFormatsByArgumentIndex
메소드를 사용하는 편이 효율적입니다. 이 메소드는, 포맷의 순서를 format
메소드에게 건네진 arguments
배열 또는 parse
메소드에 의해 반환된 결과의 배열내의 요소의 순서에 대응하는 것이라고 봅니다.
public final StringBuffer format(Object [] arguments, StringBuffer result, FieldPosition pos)
StringBuffer
에, 포맷 요소를 포맷 된 객체에 의해 옮겨놓아 MessageFormat
의 패턴을 추가합니다.
개개의 포맷 요소에 치환된 텍스트는, 다음의 겉(표)의 최초로 일치하는 행으로 나타나도록(듯이), 포맷 요소의 현재의 서브 포맷과 포맷 요소의 인수 인덱스에 있는 arguments
요소로부터 얻을 수 있습니다. 인수는,arguments
가 null
인지, 또는 요소의 수가 argumentIndex+1 개보다 적은 경우, 사용 불가입니다.
서브 포맷 | 인수 | 포맷 된 텍스트 |
---|---|---|
임의 | 사용 불가 | "{" + argumentIndex + "}"
|
임의 | null
| "null"
|
instanceof ChoiceFormat
| 임의 | subformat.format(argument). indexOf('{') >= 0 ?
|
! = null
| 임의 | subformat.format(argument)
|
null
| instanceof Number
| NumberFormat.getInstance(getLocale()). format(argument)
|
null
| instanceof Date
| DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT, getLocale()). format(argument)
|
null
| instanceof String
| argument
|
null
| 임의 | argument.toString()
|
pos
가 null 가 아니고, 한편 Field.ARGUMENT
를 참조하고 있는 경우, 최초의 포맷 된 캐릭터 라인의 위치가 돌려주어집니다.
arguments
- 포맷 하든가 또는 옮겨놓는 객체로부터 되는 배열result
- 텍스트가 추가되는 위치pos
- 입력으로는, 필요하면 위치 맞춤 필드.
출력으로는, 그 위치 맞춤 필드의 오프셋(offset)
IllegalArgumentException
- arguments
배열내의 인수가,
그것을 사용하는 포맷 요소에 의해
예측된 형태가 아닌 경우public static String format(String pattern, Object ... arguments)
(new MessageFormat
(pattern)). format
(arguments, new StringBuffer(), null). toString()
IllegalArgumentException
- 패턴이 무효인 경우,
또는 arguments
배열내의 인수가,
그것을 사용하는 포맷 요소에 의해 예측된 형태가 아니다
경우public final StringBuffer format(Object arguments, StringBuffer result, FieldPosition pos)
StringBuffer
에, 포맷 요소를 포맷 된 객체에 의해 옮겨놓아 MessageFormat
의 패턴을 추가합니다. 이것은 이하의 기술과 동등합니다.
format
((Object[]) arguments, result, pos)
Format
내의 format
arguments
- 포맷 하든가 또는 옮겨놓는 객체로부터 되는 배열result
- 텍스트가 추가되는 위치pos
- 입력으로는, 필요하면 위치 맞춤 필드.
출력으로는, 그 위치 맞춤 필드의 오프셋(offset)
toAppendTo
로서 건네받는 캐릭터 라인 버퍼.
포맷 된 텍스트가 추가된다
IllegalArgumentException
- arguments
배열내의 인수가,
그것을 사용하는 포맷 요소에 의해
예측된 형태가 아닌 경우public AttributedCharacterIterator formatToCharacterIterator(Object arguments)
MessageFormat
의 패턴에 삽입해,AttributedCharacterIterator
를 생성합니다. 반환된 AttributedCharacterIterator
를 사용하면(자), 결과의 String 를 구축할 수 있는 것과 동시에, 결과의 String 에 대한 정보를 판정할 수 있습니다.
반환된 AttributedCharacterIterator
의 텍스트는, 이하의 기술에 의해 반환되는 텍스트와 동일합니다.
format
(arguments, new StringBuffer(), null). toString()
게다가AttributedCharacterIterator
는, 적어도 arguments
배열내의 인수로부터 텍스트가 생성된 위치를 나타내는 속성을 포함합니다. 이러한 속성의 키는 MessageFormat.Field
형입니다. 속성의 값은, 텍스트가 생성된 인수의 arguments
배열내의 인덱스를 나타내는 Integer
객체입니다.
MessageFormat
가 사용하는 기본의 Format
인스턴스로부터의 속성/치도, 결과의 AttributedCharacterIterator
에 배치됩니다. 이것에 의해, 결과의 String 내의 인수의 위치를 알 수 있을 뿐만 아니라, 그 인수가 어느 필드에 포함되어 있을지도 압니다.
Format
내의 formatToCharacterIterator
arguments
- 포맷 하든가 또는 옮겨놓는 객체로부터 되는 배열
NullPointerException
- arguments
가 null
의 경우
IllegalArgumentException
- arguments
배열내의 인수가,
그것을 사용하는 포맷 요소에 의해
예측된 형태가 아닌 경우public Object [] parse(String source, ParsePosition pos)
주의:해석은 다양한 원인을 위해서(때문에), 잘 동작하지 않는 것이 있습니다. 다음에 예를 나타냅니다.
public Object [] parse(String source) throws ParseException
메세지의 해석에 대한 자세한 것은,parse(String, ParsePosition)
메소드를 참조해 주세요.
source
- 선두가 해석되는 String
Object
배열
ParseException
- 지정된 캐릭터 라인의 선두가
해석할 수 없는 경우public Object parseObject(String source, ParsePosition pos)
메소드는 pos
에 의해 지정된 인덱스를 개시 위치로서 텍스트의 해석을 시도합니다. 해석이 완료하면(자),pos
의 인덱스는, 사용된 마지막 문자 (해석에서는, 캐릭터 라인의 끝까지의 모든 문자가 사용된다고는 할 수 없다)의 뒤의 인덱스에 갱신되어 해석된 객체 배열이 돌려주어집니다. 갱신된 pos
는, 이 메소드의 다음의 호출의 개시점을 나타내는데 사용할 수 있습니다. 에러가 발생했을 경우는,pos
의 인덱스는 변경되지 않고, 에러가 발생한 문자의 인덱스에 pos
의 에러 인덱스가 설정되어 null 가 돌려주어집니다.
메세지의 해석에 대한 자세한 것은,parse(String, ParsePosition)
메소드를 참조해 주세요.
Format
내의 parseObject
source
- 부분적으로 해석되는 String
pos
- 상기의 인덱스 및 에러 인덱스 정보를 가진다
ParsePosition
객체
Object
배열 에러의 경우는
null 를 돌려준다
NullPointerException
- pos
가 null 의 경우public Object clone()
Format
내의 clone
Cloneable
public boolean equals(Object obj)
Object
내의 equals
obj
- 비교 대상의 참조 객체
true
, 그렇지 않은 경우는 false
Object.hashCode()
,
Hashtable
public int hashCode()
Object
내의 hashCode
Object.equals(java.lang.Object)
,
Hashtable
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요 : 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.