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://m.survivalescaperooms.com)
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注