sre*_*127 4 java timestamp epoch unix-timestamp
我有一个纪元时间,我想将其转换为 sql 时间戳。我可以使用以下代码从纪元中提取实际时间:
String time = "1351504294";
long t = Long.parseLong(time);
Timestamp ts = new Timestamp(t*1000);
Run Code Online (Sandbox Code Playgroud)
我得到的输出是:2012-10-29 09:58:50.0。但是当我尝试将其插入表中时,由于毫秒部分“09:58:50.0”,它显示错误。如何从时间戳中删除毫秒部分?
如果您将 直接添加Timestamp到 SQL 语句中,那么 Java 将调用toString()始终输出该格式的函数yyyy-mm-dd hh:mm:ss.fffffffff。您无法对该Timestamp对象执行任何操作来消除纳秒部分。
如果你只想要那yyyy-MM-dd hh:mm:ss部分,你可以这样做:
Timestamp ts = new Timestamp(t*1000);
String s = ts.toString().split('\\.')[0];
Run Code Online (Sandbox Code Playgroud)
或者你可以使用SimpleDateFormat:
Timestamp ts = new Timestamp(t*1000);
String s = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(ts);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
29766 次 |
| 最近记录: |