MIDP的Date和Calendar類都是J2SE的精簡版,也沒有SimpleDateFormat之類的格式化類,因此,寫了一個(gè)簡單的DateTime類實(shí)現(xiàn)本地日期和時(shí)間的格式化。
package com.crackj2ee.midp.util;
import java.util.*;
public final class DateTime {PRivate static String[] WEEKDAYS = {"SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"};
public final String timeZone;
public final int year;
public final int month;
public final int day;
public final int weekday;
public final int hour;
public final int minute;
public final int second;
public DateTime(Date date, String timeZone) {
this.timeZone = timeZone;
Calendar c = timeZone==null ? Calendar.getInstance() : Calendar.getInstance(TimeZone.getTimeZone(timeZone));
c.setTime(date);
year = c.get(Calendar.YEAR);
month = c.get(Calendar.MONTH);
day = c.get(Calendar.DAY_OF_MONTH);
weekday = c.get(Calendar.DAY_OF_WEEK);hour = c.get(Calendar.HOUR_OF_DAY);
minute = c.get(Calendar.MINUTE);
second = c.get(Calendar.SECOND);
}
public DateTime(long time, String timeZone) {
this(new Date(time), timeZone);
} public Date toDate() {
Calendar c = Calendar.getInstance(TimeZone.getTimeZone(timeZone));
c.set(Calendar.YEAR, year);
c.set(Calendar.MONTH, month);
c.set(Calendar.DAY_OF_MONTH, day);
c.set(Calendar.HOUR_OF_DAY, hour);
c.set(Calendar.MINUTE, minute);
c.set(Calendar.SECOND, second);
return c.getTime();
} public String toDateString() {
return year + "-" + (month+1) + "-" + day + "(" + WEEKDAYS[weekday-1] + ")";
} public String toTimeString() {
return hour + ":" + minute + ":" + second;
} public String toString() {
return toDateString() + " " + toTimeString();
}}
示例:
輸出當(dāng)前日期和時(shí)間:new DateTime(new Date(), "GMT+8").toString();
轉(zhuǎn)換到Date對象:toDate();
注意,要指定時(shí)區(qū),否則時(shí)間永遠(yuǎn)是GMT標(biāo)準(zhǔn)時(shí)間。可以在Windows時(shí)區(qū)設(shè)置中查詢,北京時(shí)間是"GMT+8"
(出處:http://www.survivalescaperooms.com)
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注