您的位置:首页 > 其它

将北京时间转化为Unix时间戳

2015-01-09 17:31 351 查看
参考:http://www.aiezu.com/system/linux/unix_timestamp_convert.html

今天遇到一个问题,由于数据库中存储的时间格式是Unix时间戳,因此在通过时间查找时,必须将选定的时间转化为Unix戳。

Unix时间戳(Unix timestamp),或称Unix时间(Unix time)、POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数。Unix时间戳不仅被使用在Unix系统、类Unix系统中,也在许多其他操作系统中被广泛采用。

java实现北京时间与unix timestamp互转:
unix timestamp转北京时间:

String date=new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new java.util.Date(123456789 * 1000));

北京时间转unix timestamp:

long n = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("2012-12-12 12:12:12").getTime();

由于我只是将特定时间转化为Unix时间戳,所以采用的方法如下:

private static long parseDate(String text)
    throws ParseException
{
    SimpleDateFormat dateFormat = new SimpleDateFormat("hh:mm a MM/dd/yyyy",
                                                       Locale.US);      
    dateFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
    return dateFormat.parse(text).getTime();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: