현재 시간을 24시간제로 표시하고자 한다면 android.text.format.DateFormat라는 클래스를 이요하면 된다.
이 클래스가 제공하는 메소드 중에서 다음 메소드가 이 기능을 제공한다.
public static CharSequence format (CharSequence inFormat, long inTimeInMillis)
첫 번째 매개인자 inFormat에 사용되는 형식은 아래 표의 규칙대로 하면된다
(http://developer.android.com/reference/java/text/SimpleDateFormat.html 참조)
| Symbol | Meaning | Kind | Example |
D | day in year | (Number) | 189 |
E | day of week | (Text) | E/EE/EEE:Tue, EEEE:Tuesday, EEEEE:T |
F | day of week in month | (Number) | 2 (2nd Wed in July) |
G | era designator | (Text) | AD |
H | hour in day (0-23) | (Number) | 0 |
K | hour in am/pm (0-11) | (Number) | 0 |
L | stand-alone month | (Text) | L:1 LL:01 LLL:Jan LLLL:January LLLLL:J |
M | month in year | (Text) | M:1 MM:01 MMM:Jan MMMM:January MMMMM:J |
S | fractional seconds | (Number) | 978 |
W | week in month | (Number) | 2 |
Z | time zone (RFC 822) | (Time Zone) | Z/ZZ/ZZZ:-0800 ZZZZ:GMT-08:00 ZZZZZ:-08:00 |
a | am/pm marker | (Text) | PM |
c | stand-alone day of week | (Text) | c/cc/ccc:Tue, cccc:Tuesday, ccccc:T |
d | day in month | (Number) | 10 |
h | hour in am/pm (1-12) | (Number) | 12 |
k | hour in day (1-24) | (Number) | 24 |
m | minute in hour | (Number) | 30 |
s | second in minute | (Number) | 55 |
w | week in year | (Number) | 27 |
y | year | (Number) | yy:10 y/yyy/yyyy:2010 |
z | time zone | (Time Zone) | z/zz/zzz:PST zzzz:Pacific Standard Time |
' | escape for text | (Delimiter) | 'Date=':Date= |
'' | single quote | (Literal) | 'o''clock':o'clock |
예를들면
MM : 11, 10과 같이 월 표시를 두 자리 숫자로 표현
MMM : Nov, Oct...와 같이 월 표시를 영문 약어로.
한글 폰에서는 그냥 '월'이라는 글자로 표시
MMMM : November, October...와 같이 월 표시를 영문 full name으로 표시
yyyy-MM-dd h:mm => 2013-11-25 3:25
yyyy-MM-dd h:mm a => 2013-11-25 3:25 pm
yyyy-MM-dd k:mm => 2013-11-25 15:25 (24시간제로 표시)
예제 소스는...
String crrTime = System.currentTimeMillis().toString();
String now = DateFormat.format("yyyy MMM dd k:mm", crrTime);
TextView txt = (TextView)findViewById(R.id.txt);
txt.setText(now);
여기서 DateFormat은 자바의 DateFormat(
java.text.DateFormat)이 아니라 안드로이드의 DateFormat이다.
클래스 이름이 동일한 DateFormat은 자바에도 있고 안드로이드에도 있다.
android.text.format.DateFormat;

댓글 없음:
댓글 쓰기