仅从时间戳中获取日期
这是我传递时间戳的下面函数,我只需要从时间戳返回的日期,而不是小时和秒.使用下面的代码,我得到-
This is my Below function in which I am passing timestamp, I need only the date in return from the timestamp not the Hours and Second. With the below code I am getting-
private String toDate(long timestamp) {
Date date = new Date (timestamp * 1000);
return DateFormat.getInstance().format(date).toString();
}
这是我得到的输出.
11/4/01 11:27 PM
但我只需要这样的日期
2001-11-04
有什么建议吗?
推荐答案
改用 SimpleDateFormat:
Use SimpleDateFormat instead:
private String toDate(long timestamp) {
Date date = new Date(timestamp * 1000);
return new SimpleDateFormat("yyyy-MM-dd").format(date);
}
更新:Java 8 解决方案:
Updated: Java 8 solution:
private String toDate(long timestamp) {
LocalDate date = Instant.ofEpochMilli(timestamp * 1000).atZone(ZoneId.systemDefault()).toLocalDate();
return date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
}
相关文章