解析将历元字符串转换为Java日期
我从数据库中得到一个历元字符串,看起来像这样:1391328000000
我很难把它转换成Java Date
我尝试了以下方法:
private String buildDate(String dateString){
System.out.println("dateString " + dateString);
DateFormat format = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
format.setTimeZone(TimeZone.getTimeZone("Etc/UTC"));
String formatted = format.format(Integer.parseInt(dateString));
return formatted;
}
# 1 楼答案
您需要将其转换为
java.util.Date
对象,以便SimpleDateFormat
处理它。此外,像您引用的那样的值需要被解析为long
,因为它对于int
来说太大了也就是说,将
formatted
设置为的行更改为:另一方面,如果您正在处理的项目可以处理额外的外部依赖项,请将日期/时间处理切换到joda library。在
java.util
(即Date
和Calendar
)中的东西很快就会变得痛苦,并且容易出错