如果知道一个字符串格式得时间,如2002-10-30 01:31:23,如何知道它从1970年1月1号以来的毫秒数?

jjja 2006-01-17 02:15:46
j2me里的Date对象只有一个以long维类型构造函数,没有一个以时间字符串为类型的构造函数,因此如果想得到非当前时间的Date对象,只能用构造一个long类型的参数,问题是如何才能构造这个long类型得参数?
...全文
282 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
cuilichen 2006-01-18
  • 打赏
  • 举报
回复
public static void main(String[] args) throws UnsupportedEncodingException {
String str = "20030402";

Calendar ca=Calendar.getInstance();

int year=Integer.parseInt(str.substring(0,4));//年
ca.set(Calendar.YEAR,year);
int month=Integer.parseInt(str.substring(4,6));
//月,注意要减1,因为一月对应的是0
ca.set(Calendar.MONTH,month-1);
int day=Integer.parseInt(str.substring(6,8));//日,
//如果想要得到第二天的日期就加1,如果超过了当月的最大天数,Calendar会自动处理
ca.set(Calendar.DAY_OF_MONTH,day);

Date date=ca.getTime();
System.out.println(date);
}

这是J2SE的程序,在J2ME中也有Calendar类,和J2SE的类似,楼主可以看一下文档,就知道怎么用了。
jjja 2006-01-17
  • 打赏
  • 举报
回复
知道怎么整了
jjja 2006-01-17
  • 打赏
  • 举报
回复
我用的是sony-errison的j2me sdk2.2.3,里面的Date对象的构造函数只有一个无参的,和一个以long型参数的构造函数,根本就没有 Date(y,m,d,h,m,s)的构造函数。
bluelily22 2006-01-17
  • 打赏
  • 举报
回复
你即然知道字符串的格,就把它拆了,用new Date(y,m,d,h,m,s)来构造呀
jjja 2006-01-17
  • 打赏
  • 举报
回复
楼上,j2me里哪有SimpleDateFormat这个类亚?
要是有早就解决了。
bluelily22 2006-01-17
  • 打赏
  • 举报
回复
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date d1 = df.parse("2002-10-30 01:31:23");
Date d2 = df.parse("1970-01-01 00:00:00");
long m1 = d1.getTime();
long m2 = d2.getTime();
long delta = m1 - m2;
delta就是相差的毫秒数

13,100

社区成员

发帖
与我相关
我的任务
社区描述
Java J2ME
社区管理员
  • J2ME社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧