WAP之家:为您提供最全最新的WAP技术,CP.SP.3G等行业资讯。 WAP之家交流论坛全新开放 点击进入>>
WAP资讯 | 3G动态 | SP动态 | 运营商动态 | 内容商动态 | 制造商动态 | 论坛讨论>> 每次自动访问
WAP技术 | WAP源码 | 手机编程 | 手机源码 | 无线技术 | J2ME技术 | 手机软件 添加到收藏夹
IVR技术 | SP资料 | SMS MMS技术 | 商业方案 | IVR下载 | 书籍教程 | 工具软件 语言:繁體中文

WAP之家技术文章J2ME技术进阶教程MIDP中对日期时间的简单转换

MIDP中对日期时间的简单转换
作者:Xuefeng  来源:blog.csdn.net/asklxf  发布时间:2006-7-25 8:39:01

MIDP的Date和Calendar类都是J2SE的精简版,也没有SimpleDateFormat之类的格式化类,因此,写了一个简单的DateTime类实现本地日期和时间的格式化。

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();
    }
}

示例:

输出当前日期和时间:new DateTime(new Date(), "GMT+8").toString();
转换到Date对象:toDate();

注意,要指定时区,否则时间永远是GMT标准时间。可以在Windows时区设置中查询,北京时间是"GMT+8"

[] [返回上一页] [打 印]
文章评论

用户名: 查看更多评论

分 值:100分 85分 70分 55分 40分 25分 10分 0分

内 容:

         (注“”为必填内容。) 验证码: 验证码,看不清楚?请点击刷新验证码