首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

java String转向时间戳(long类型)

2013-03-26 
java String转为时间戳(long类型)从网上找了半天,很多人都是抄袭别人,而且还不正确,相当气愤!下面是我修改

java String转为时间戳(long类型)

从网上找了半天,很多人都是抄袭别人,而且还不正确,相当气愤!

下面是我修改后正确的把String类型转为事件戳的方法:

public long getTimestamp(String sTime) throws ParseException{        System.out.println(sTime);        Timestamp ts = Timestamp.valueOf(sTime);        Date date2 = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss")         .parse("1970/01/01 08:00:00");        long l = ts.getTime() - date2.getTime() > 0 ? ts.getTime()                 - date2.getTime() : date2.getTime() - ts.getTime();          long rand = (int)(l/1000);                  return rand; }

?

sTime是“yyyy-MM-dd HH:mm:ss”格式的,否则会抛出转换异常,转换失败。

这个转换绝对正确,不信可以用其他工具比较命令行输出的sTime和rand结果。

为什么要除以1000呢,因为时间戳的默认单位是毫秒,System.currentTimeMillis(); 返回的就是以毫秒为单位的系统时间戳

热点排行