首页 > 解决方案 > 以毫秒为单位的包含“e”的格式的日期转换

问题描述

如何在日期和时间中转换“1.5332445E9” ?

直到现在我已经尝试过

private String getDate(long time) {
            Date date = new Date(time);
            return Utils.getFormattedDate(date, "dd/MM/yyyy HH:mm:ss a");
        }
public static String getFormattedDate(Date date, String desiredFormat) {
                DateFormat dateFormat = new SimpleDateFormat(desiredFormat);
                dateFormat.format(date);
                return dateFormat.format(date);
            }

任何帮助,将不胜感激。

标签: androidandroid-studiodatetimesimpledateformatdate-format

解决方案


如果此字符串表示毫秒,则获取日期如下:

String s = "1.5332445E9";
Double doubleMils = 0.0;
try {
    doubleMils = Double.parseDouble(s);
} catch (NumberFormatException e) {
    e.printStackTrace();
}
Long longMils = doubleMils.longValue();

Date date = new Date(longMils);

现在你可以随意格式化date了。


推荐阅读