|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요 : 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
java.lang.Objectjava.text.Format
java.text.DateFormat
public abstract class DateFormat
DateFormat 는, 언어에 의존하지 않는 방법으로 일자 또는 시각을 포맷 및 해석하는, 일자/시각 포맷 서브 클래스의 추상 클래스입니다. SimpleDateFormat 등의 일자/시각 포맷 서브 클래스에 의해, 포맷 (일자 -> 텍스트), 해석 (텍스트 -> 일자), 및 정규화를 실시할 수가 있습니다. 일자는,Date
객체 또는 1970 년 1 월 1 일 그리니지 표준시 00:00:00 부터의 밀리 세컨드로 표현됩니다.
DateFormat 는, 디폴트 값, 지정된 로케일, 많은 포맷 스타일에 근거해, 디폴트의 일자/시각 포매터를 취득하는 많은 클래스 메소드를 제공합니다. 포맷 스타일에는 FULL, LONG, MEDIUM, 및 SHORT 가 있습니다. 이러한 스타일의 상세와 사용예에 대해서는, 메소드의 설명을 참조해 주세요.
DateFormat 는, 모든 로케일의 일자에 대해 포맷 및 해석을 지원합니다. 코드는, 달, 요일, 달력 포맷, 음력 태양력 등 로케일의 관습과는 완전하게 독립하고 있습니다.
현재의 로케일용으로 일자를 포맷 하기 위해서는, 다음의 static 팩토리 메소드의 1 개를 사용합니다.
myString = DateFormat.getDateInstance(). format(myDate);
복수의 일자를 포맷 하는 경우에는, 그 포맷을 취득해, 그것을 여러 차례 사용하는 (분)편이 효율적입니다. 이것에 의해, 시스템이 로컬의 언어와 나라의 룰을 몇번이나 취득할 필요가 없어집니다.
DateFormat df = DateFormat.getDateInstance(); for (int i = 0; i < myDate.length; ++i) { output.println(df.format(myDate[i]) + "; "); }
어느 날 첨부를 다른 로케일에 대해서 포맷 하는 경우에는, getDateInstance()의 호출해에 그 일자를 지정합니다.
DateFormat df = DateFormat.getDateInstance(DateFormat.LONG, Locale.FRANCE);
게다가 해석을 위해서(때문에) DateFormat 를 사용할 수 있습니다.
myDate = df.parse(myString);
그 나라의 일반적으로의 일자 포맷을 가져오려면 , getDateInstance 를 사용합니다. 그 밖에도 사용 가능한 static 팩토리 메소드가 있습니다. 그 나라의 시각 포맷을 가져오려면 , getTimeInstance 를 사용합니다. 일자와 시각 포맷을 가져오려면 , getDateTimeInstance 를 사용합니다. 결과의 길이를 제어하기 위해서, 이러한 팩토리 메소드를 다른 옵션으로 건네줄 수가 있습니다 (SHORT 로부터 MEDIUM, LONG, FULL 에). 정확한 결과는 로케일에 의존합니다만, 일반적으로는 다음과 같이 됩니다.
필요에 따라서, 포맷에 타임 존을 설정할 수도 있습니다. 포맷이나 해석을 한층 더 제어하는 경우 (또는, 사용자에게 그러한 제어를 주는 경우)에는, 팩토리 메소드로부터 얻은 DateFormat 을 SimpleDateFormat 에 캐스트 하는 방법을 시행할 수도 있습니다. 이 방법은 대부분의 나라에 유효합니다만, 그렇지 않은 경우에 대비해, try 블록에 넣도록 해 주세요.
게다가 parse 와 format 메소드의 형식을 ParsePosition 와 FieldPosition 와 함께 사용하면, 다음 일 을 할 수가 있습니다.
일자 포맷은 동기화 되지 않습니다. thread 마다 다른 포맷 인스턴스를 작성하는 것을 추천합니다. 복수의 thread가 포맷에 동시에 액세스 하는 경우는, 외부적으로 동기화할 필요가 있습니다.
Format
,
NumberFormat
,
SimpleDateFormat
,
Calendar
,
GregorianCalendar
,
TimeZone
,
직렬화 된 형식 상자의 클래스의 개요 | |
---|---|
static class |
DateFormat.Field
DateFormat.formatToCharacterIterator 로부터 반환된 AttributedCharacterIterator 내의 속성 키, 및 FieldPosition 내의 필드 식별자로서 사용하는 정수를 정의합니다. |
필드의 개요 | |
---|---|
static int |
AM_PM_FIELD
AM_PM 필드의 위치 맞춤을 위한 정수입니다. |
protected Calendar |
calendar
일자와 시각의 포맷을 행하기 위한 타임 필드의 값을 생성하기 위해서 DateFormat 가 사용하는 달력입니다. |
static int |
DATE_FIELD
DATE 필드의 위치 맞춤을 위한 정수입니다. |
static int |
DAY_OF_WEEK_FIELD
DAY_OF_WEEK 필드의 위치 맞춤을 위한 정수입니다. |
static int |
DAY_OF_WEEK_IN_MONTH_FIELD
DAY_OF_WEEK_IN_MONTH 필드의 위치 맞춤을 위한 정수입니다. |
static int |
DAY_OF_YEAR_FIELD
DAY_OF_YEAR 필드의 위치 맞춤을 위한 정수입니다. |
static int |
DEFAULT
디폴트 스타일 패턴을 위한 정수입니다. |
static int |
ERA_FIELD
ERA 필드의 위치 맞춤을 위한 정수입니다. |
static int |
FULL
전스타일 패턴을 위한 정수입니다. |
static int |
HOUR_OF_DAY0_FIELD
0 로부터 시작되는 HOUR_OF_DAY 필드의 위치 맞춤을 위한 정수입니다. |
static int |
HOUR_OF_DAY1_FIELD
1 로부터 시작되는 HOUR_OF_DAY 필드의 위치 맞춤을 위한 정수입니다. |
static int |
HOUR0_FIELD
0 로부터 시작되는 HOUR 필드의 위치 맞춤을 위한 정수입니다. |
static int |
HOUR1_FIELD
1 로부터 시작되는 HOUR 필드의 위치 맞춤을 위한 정수입니다. |
static int |
LONG
긴 스타일 패턴을 위한 정수입니다. |
static int |
MEDIUM
길이가 중위의 스타일 패턴을 위한 정수입니다. |
static int |
MILLISECOND_FIELD
MILLISECOND 필드의 위치 맞춤을 위한 정수입니다. |
static int |
MINUTE_FIELD
MINUTE 필드의 위치 맞춤을 위한 정수입니다. |
static int |
MONTH_FIELD
MONTH 필드의 위치 맞춤을 위한 정수입니다. |
protected NumberFormat |
numberFormat
일자와 시각의 수치를 포맷 하기 위해서 DateFormat 가 사용하는 수치 포매터입니다. |
static int |
SECOND_FIELD
SECOND 필드의 위치 맞춤을 위한 정수입니다. |
static int |
SHORT
짧은 스타일 패턴을 위한 정수입니다. |
static int |
TIMEZONE_FIELD
TIMEZONE 필드의 위치 맞춤을 위한 정수입니다. |
static int |
WEEK_OF_MONTH_FIELD
WEEK_OF_MONTH 필드의 위치 맞춤을 위한 정수입니다. |
static int |
WEEK_OF_YEAR_FIELD
WEEK_OF_YEAR 필드의 위치 맞춤을 위한 정수입니다. |
static int |
YEAR_FIELD
YEAR 필드의 위치 맞춤을 위한 정수입니다. |
생성자 의 개요 | |
---|---|
protected |
DateFormat ()
새로운 일자 포맷을 작성합니다. |
메소드의 개요 | |
---|---|
Object |
clone ()
Cloneable 를 오버라이드(override) 합니다. |
boolean |
equals (Object obj)
equals 를 오버라이드(override) 합니다. |
String |
format (Date date)
Date 를 일자/시각 캐릭터 라인에 포맷 합니다. |
abstract StringBuffer |
format (Date date,
StringBuffer toAppendTo,
FieldPosition fieldPosition)
Date 를 일자/시각 캐릭터 라인에 포맷 합니다. |
StringBuffer |
format (Object obj,
StringBuffer toAppendTo,
FieldPosition fieldPosition)
Format 를 오버라이드(override) 합니다. |
static Locale [] |
getAvailableLocales ()
이 클래스의 get*Instance 메소드가 지역 대응의 인스턴스를 돌려줄 수 있는 로케일 모든 배열을 돌려줍니다. |
Calendar |
getCalendar ()
이 일자/시각 포매터에 대응하는 달력을 가져옵니다. |
static DateFormat |
getDateInstance ()
디폴트의 로케일에 대해, 디폴트의 포맷 스타일을 가지는 일자 포매터를 가져옵니다. |
static DateFormat |
getDateInstance (int style)
디폴트의 로케일에 대해, 지정된 포맷 스타일을 가지는 일자 포매터를 가져옵니다. |
static DateFormat |
getDateInstance (int style,
Locale aLocale)
지정된 로케일에 대해, 지정된 포맷 스타일을 가지는 일자 포매터를 가져옵니다. |
static DateFormat |
getDateTimeInstance ()
디폴트의 로케일에 대해, 디폴트의 포맷 스타일을 가지는 일자/시각 포매터를 가져옵니다. |
static DateFormat |
getDateTimeInstance (int dateStyle,
int timeStyle)
디폴트의 로케일에 대해, 지정된 일자/시각 포맷 스타일을 가지는 일자/시각 포매터를 가져옵니다. |
static DateFormat |
getDateTimeInstance (int dateStyle,
int timeStyle,
Locale aLocale)
지정된 로케일에 대해, 지정된 포맷 스타일을 가지는 일자/시각 포매터를 가져옵니다. |
static DateFormat |
getInstance ()
일자와 시각의 양쪽 모두에 대해 SHORT 스타일을 가지는 일자/시각 포매터를 가져옵니다. |
NumberFormat |
getNumberFormat ()
시각의 포맷과 해석을 위해서(때문에) 이 일자/시각 포매터가 사용하는 수치 포매터를 가져옵니다. |
static DateFormat |
getTimeInstance ()
디폴트의 로케일에 대해, 디폴트의 포맷 스타일을 가질 때 각포매터를 가져옵니다. |
static DateFormat |
getTimeInstance (int style)
디폴트의 로케일에 대해, 지정된 포맷 스타일을 가질 때 각포매터를 가져옵니다. |
static DateFormat |
getTimeInstance (int style,
Locale aLocale)
지정된 로케일에 대해, 지정된 포맷 스타일을 가질 때 각포매터를 가져옵니다. |
TimeZone |
getTimeZone ()
타임 존을 가져옵니다. |
int |
hashCode ()
hashCode 를 오버라이드(override) 합니다. |
boolean |
isLenient ()
일자/시각의 해석을 엄밀하게 실시할지 어떨지를 판정합니다. |
Date |
parse (String source)
지정된 캐릭터 라인의 선두로부터 텍스트를 해석해 일자를 생성합니다. |
abstract Date |
parse (String source,
ParsePosition pos)
지정된 해석 위치에 따라 일자/시각 캐릭터 라인을 해석합니다. |
Object |
parseObject (String source,
ParsePosition pos)
캐릭터 라인으로부터 텍스트를 해석해 Date 를 생성합니다. |
void |
setCalendar (Calendar newCalendar)
이 일자 포맷으로 사용하는 달력을 설정합니다. |
void |
setLenient (boolean lenient)
일자/시각 해석을 엄밀하게 실시할지 어떨지를 설정합니다. |
void |
setNumberFormat (NumberFormat newNumberFormat)
수치 포매터를 설정합니다. |
void |
setTimeZone (TimeZone zone)
이 DateFormat 객체의 달력의 타임 존을 설정합니다. |
클래스 java.text. Format 로부터 상속된 메소드 |
---|
format , formatToCharacterIterator , parseObject |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
finalize , getClass , notify , notifyAll , toString , wait , wait , wait |
필드의 상세 |
---|
protected Calendar calendar
DateFormat
가 사용하는 달력입니다. 서브 클래스는, 이 달력을, 이 DateFormat
에 대응하는 로케일에 적절한 달력에 초기화할 필요가 있습니다.
protected NumberFormat numberFormat
DateFormat
가 사용하는 수치 포매터입니다. 서브 클래스는, 이 수치 포매터를, 이 DateFormat
에 대응하는 로케일에 적절한 수치 포맷에 초기화할 필요가 있습니다.
public static final int ERA_FIELD
public static final int YEAR_FIELD
public static final int MONTH_FIELD
public static final int DATE_FIELD
public static final int HOUR_OF_DAY1_FIELD
public static final int HOUR_OF_DAY0_FIELD
public static final int MINUTE_FIELD
public static final int SECOND_FIELD
public static final int MILLISECOND_FIELD
public static final int DAY_OF_WEEK_FIELD
public static final int DAY_OF_YEAR_FIELD
public static final int DAY_OF_WEEK_IN_MONTH_FIELD
public static final int WEEK_OF_YEAR_FIELD
public static final int WEEK_OF_MONTH_FIELD
public static final int AM_PM_FIELD
public static final int HOUR1_FIELD
public static final int HOUR0_FIELD
public static final int TIMEZONE_FIELD
public static final int FULL
public static final int LONG
public static final int MEDIUM
public static final int SHORT
public static final int DEFAULT
생성자 의 상세 |
---|
protected DateFormat()
메소드의 상세 |
---|
public final StringBuffer format(Object obj, StringBuffer toAppendTo, FieldPosition fieldPosition)
Format
내의 format
obj
- Number 또는 Date 로 할 필요가 있는toAppendTo
- 돌려주어질 때 각캐릭터 라인을 위한 캐릭터 라인 버퍼fieldPosition
- 반환된 캐릭터 라인내의
필드 위치를 파악한다.
입력으로는, 필요하면
위치 맞춤 필드. 출력으로는, 그 위치 맞춤 필드의 오프셋(offset). 예를 들어,
「1996.07. 10 AD at 15:08:56 PDT」라고 할 때 각텍스트가 지정되었을 경우에,
지정된 fieldPosition 가 DateFormat.YEAR_FIELD 이면,
fieldPosition 의 개시 인덱스와 종료 인덱스는
각각 0 으로 4 로 설정된다.
같은 시각 필드가 패턴내에서 여러 차례 나타나는 경우,
fieldPosition 는 그 때 각필드의
최초의 것으로 설정된다. 예를 들어,
패턴 「h a z (zzzz)」라고 위치 맞춤 필드의 DateFormat.TIMEZONE_FIELD 를 사용해
Date 를 시각 캐릭터 라인 「1 PM PDT (Pacific Daylight Time)」에 포맷 하면(자),
fieldPosition 의 개시 인덱스와 종료 인덱스는 각각,
최초로 나타난 타임 존 패턴 문자 「z」에 대해서
5 로 8 으로 설정된다
Format
public abstract StringBuffer format(Date date, StringBuffer toAppendTo, FieldPosition fieldPosition)
date
- 일자/시각 캐릭터 라인에 포맷 하는 DatetoAppendTo
- 반환되는 일자/시각 캐릭터 라인을 위한 캐릭터 라인 버퍼fieldPosition
- 반환된 캐릭터 라인내의
필드 위치를 파악한다.
입력으로는, 필요하면
위치 맞춤 필드. 출력으로는, 그 위치 맞춤 필드의 오프셋(offset). 예를 들어,
「1996.07. 10 AD at 15:08:56 PDT」라고 할 때 각텍스트가 지정되었을 경우에,
지정된 fieldPosition 가 DateFormat.YEAR_FIELD 이면,
fieldPosition 의 개시 인덱스와 종료 인덱스는
각각 0 으로 4 로 설정된다.
같은 시각 필드가 패턴내에서 여러 차례 나타나는 경우,
fieldPosition 는 그 때 각필드의
최초의 것으로 설정된다. 예를 들어,
패턴 「h a z (zzzz)」라고 위치 맞춤 필드의 DateFormat.TIMEZONE_FIELD 를 사용해
Date 를 시각 캐릭터 라인 「1 PM PDT (Pacific Daylight Time)」에 포맷 하면(자),
fieldPosition 의 개시 인덱스와 종료 인덱스는 각각,
최초로 나타난 타임 존 패턴 문자 「z」에 대해서
5 로 8 으로 설정된다
public final String format(Date date)
date
- 시각 캐릭터 라인에 포맷 할 때 각치
public Date parse(String source) throws ParseException
일자의 해석에 대한 자세한 것은,parse(String, ParsePosition)
메소드를 참조해 주세요.
source
- 선두가 해석되는 String
Date
ParseException
- 지정된 캐릭터 라인의 선두가
해석할 수 없는 경우public abstract Date parse(String source, ParsePosition pos)
디폴트 값에서는, 해석은 엄밀하지는 않습니다. 입력이, 이 객체의 포맷 메소드로 사용되는 형식은 아니지만, 일자로서 해석 가능하면, 해석은 정상적으로 행해집니다. 클라이언트는, setLenient(false)를 호출하는 것에 의해, 이 포맷을 엄밀하게 요구할 수 있습니다.
source
- 해석하는 일자/시각 캐릭터 라인pos
- 입력시는, 해석을 개시하는 위치.
출력시는, 해석이 종료한 위치,
또는 해석이 실패했을 경우에는 개시 위치
setLenient(boolean)
public Object parseObject(String source, ParsePosition pos)
Date
를 생성합니다.
메소드는 pos
에 의해 지정된 인덱스를 개시 위치로서 텍스트의 해석을 시도합니다. 해석이 완료하면(자),pos
의 인덱스는, 사용된 마지막 문자 (해석에서는, 캐릭터 라인의 끝까지의 모든 문자를 사용할 필요는 없습니다)의 뒤의 인덱스에 갱신되어 해석된 일자가 돌려주어집니다. 갱신된 pos
는, 이 메소드의 다음의 호출의 개시점을 나타내는데 사용할 수 있습니다. 에러가 발생했을 경우는,pos
의 인덱스는 변경되지 않고, 에러가 발생한 문자의 인덱스에 pos
의 에러 인덱스가 설정되어 null 가 돌려주어집니다.
일자의 해석에 대한 자세한 것은,parse(String, ParsePosition)
메소드를 참조해 주세요.
Format
내의 parseObject
source
- 부분적으로 해석되는 String
pos
- 상기의 인덱스 및 에러 인덱스 정보를 가진다
ParsePosition
객체
Date
에러의 경우는
null 를 돌려준다
NullPointerException
- pos
가 null 의 경우public static final DateFormat getTimeInstance()
public static final DateFormat getTimeInstance(int style)
style
- 지정하는 포맷 스타일. 다음에 예를 나타냅니다.
US 로케일에서의 h:mm a 에 대한 SHORT
public static final DateFormat getTimeInstance(int style, Locale aLocale)
style
- 지정하는 포맷 스타일. 다음에 예를 나타냅니다.
US 로케일에서의 h:mm a 에 대한 SHORTaLocale
- 지정된 로케일
public static final DateFormat getDateInstance()
public static final DateFormat getDateInstance(int style)
style
- 지정하는 포맷 스타일. 다음에 예를 나타냅니다.
US 로케일에서의 M/d/yy 에 대한 SHORT
public static final DateFormat getDateInstance(int style, Locale aLocale)
style
- 지정하는 포맷 스타일. 다음에 예를 나타냅니다.
US 로케일에서의 M/d/yy 에 대한 SHORTaLocale
- 지정된 로케일
public static final DateFormat getDateTimeInstance()
public static final DateFormat getDateTimeInstance(int dateStyle, int timeStyle)
dateStyle
- 지정하는 일자 포맷 스타일다음에 예를 나타냅니다.
US 로케일에서의 M/d/yy 에 대한 SHORTtimeStyle
- 지정할 때 각포맷 스타일다음에 예를 나타냅니다.
US 로케일에서의 h:mm a 에 대한 SHORT
public static final DateFormat getDateTimeInstance(int dateStyle, int timeStyle, Locale aLocale)
dateStyle
- 지정하는 일자 포맷 스타일timeStyle
- 지정할 때 각포맷 스타일aLocale
- 지정된 로케일
public static final DateFormat getInstance()
public static Locale [] getAvailableLocales()
get*Instance
메소드가 지역 대응의 인스턴스를 돌려줄 수 있는 로케일 모든 배열을 돌려줍니다. 반환되는 배열은, Java 런타임 및 인스톨 되고 있는 DateFormatProvider
구현에 의해 지원되고 있는 로케일의 화집합을 나타냅니다. 이것에는,Locale.US
와 등가인 Locale
인스턴스가 적어도 1 개(살) 포함되어 있을 필요가 있습니다.
DateFormat
인스턴스를
사용 가능한 로케일의 배열public void setCalendar(Calendar newCalendar)
newCalendar
- 일자 포맷으로 사용하는 새로운 Calendarpublic Calendar getCalendar()
public void setNumberFormat(NumberFormat newNumberFormat)
newNumberFormat
- 지정하는 새로운 NumberFormatpublic NumberFormat getNumberFormat()
public void setTimeZone(TimeZone zone)
zone
- 지정하는 새로운 타임 존public TimeZone getTimeZone()
public void setLenient(boolean lenient)
lenient
- true 의 경우는 엄밀하지 않는 해석Calendar.setLenient(boolean)
public boolean isLenient()
public int hashCode()
Object
내의 hashCode
Object.equals(java.lang.Object)
,
Hashtable
public boolean equals(Object obj)
Object
내의 equals
obj
- 비교 대상의 참조 객체
true
, 그렇지 않은 경우는 false
Object.hashCode()
,
Hashtable
public Object clone()
Format
내의 clone
Cloneable
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요 : 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.