我有一个数据库,其中包含以下格式的时间戳:
Wed Feb 29 20:56:47 +0000 2012
Wed Feb 29 00:32:48 +0000 2012
Fri Apr 01 00:10:30 +0000 2011
我需要将 转换为 Epoch 时间以便轻松地进行计算。
我希望它们是自 1970 年以来的秒数(就像 System.currentTimeMillis()/1000
所做的那样)
Java 是否有一些方法可以解决这个问题,还是我必须解析和计算它?提前致谢。
最佳答案
好吧,你必须解析它,但这很容易用 SimpleDateFormat
来做:
SimpleDateFormat format = new SimpleDateFormat("E MMM dd HH:mm:ss Z yyyy",
Locale.US);
Date date = format.parse(text);
long secondsSinceEpoch = date.getTime() / 1000;
另一方面,如果您将数据库中的值存储在更合适的列类型中会更好。您真的将它们存储为文本吗?如果是,为什么?
关于Java 时间(20 月 29 日星期三 :56:47 +0000 2012) to epoch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9548055/