【问题标题】:How can i convert timestamp value into date in java [closed]如何在java中将时间戳值转换为日期[关闭]
【发布时间】:2014-05-20 05:07:30
【问题描述】:

我正在寻找一种将“083752”值(长数据格式的时间戳值)存储到 Mysql 数据库(类型 = DateTime)的方法。因此,我需要将该值转换为人类可读的日期时间。我使用以下代码来做到这一点。

long l = 083752;
Date date = new Date(l);
System.out.println(date.toString());

编辑 我需要做的是 83752 => 1/2/1970 4:45:52 AM

但它不起作用。我也关注了这个page

【问题讨论】:

  • 083752 打算代表什么日期/时间?
  • 不起作用,详细说明
  • 083752 是时间戳。请问有人可以解释为什么不投票吗?
  • 您想在数据库中存储一个日期?为什么需要格式化日期?
  • 整数字面量是八进制吗?

标签: java mysql


【解决方案1】:

如果你以毫秒为单位存储时间,那么

您可以使用 java.util.Date 类,然后使用 SimpleDateFormat 来格式化日期。

Date date=new Date(millis);

例如:

long l = Long.parseLong("083752"); // mills
DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(l);
System.out.println(formatter.format(calendar.getTime())); 

这将返回日期

【讨论】:

  • 但是long l给出超出范围的错误
【解决方案2】:

我找到了答案。感谢所有支持我的人。

 long l = Long.parseLong("083752");
 String date1 = new java.text.SimpleDateFormat("MM/dd/yyyy HH:mm:ss").format(new java.util.Date(l * 1000));
 System.out.println(date1);

【讨论】:

  • 是的,它有效。除了我的方法是正确的以外,我没有提到 parse
猜你喜欢
  • 1970-01-01
  • 2012-08-04
  • 1970-01-01
  • 2012-08-01
  • 1970-01-01
  • 2013-01-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多