我已经看到这个问题被问了很多次,似乎没有一个答案是我需要的。
我有一个长类型变量,其中存储了一个纪元时间。
我想要做的是将它转换成一个字符串
例如,如果存储的纪元时间为今天,则最终字符串应为:
17/03/2012
我该怎么做呢?
发布于 2012-03-18 07:12:19
调查SimpleDateFormat
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
sdf.format(new Date(myTimeAsLong));发布于 2012-03-18 07:11:10
您可以从long创建一个Date -这很简单:
Date date = new Date(epochTime);请注意,这里的epochTime应该是从纪元开始的毫秒数--如果您有从纪元开始的秒数,则乘以1000。
然后,您将创建一个SimpleDateFormat,指定相关的模式、文化和时区。例如:
SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy", Locale.US);
format.setTimeZone(...);然后使用它将日期格式化为字符串:
String text = format.format(date);发布于 2014-07-24 13:10:58
Date date = new Date(String); 这是不推荐使用的。
解决方案
  Date date = new Date(1406178443 * 1000L);
  DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
  format.setTimeZone(TimeZone.getTimeZone("Etc/UTC"));
  String formatted = format.format(date);确保乘以1000L
https://stackoverflow.com/questions/9754600
复制相似问题