繁体   English   中英

将毫秒转换为其他日期格式

[英]Convert Date with milliseconds to another date format

我有一个以字符串形式传递的日期,该日期的日期格式为毫秒,如下所示:

String dateMilli = "2014-08-21 09:11:44.187";

如何将这种格式转换为日期格式:

yyyy-MM-dd'T'HH:mm:ss
or 
2014-08-21T10:39:41

到目前为止,我有这个,但是没有用

Date tempDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS").parse(dateMilli);
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");  
dateFormat.format(tempDate);
System.out.println(" date format: "+ dateFormat.toString());

Output:
date format: java.text.SimpleDateFormat@6b2ed43a

您正在打印DateFormat对象-请勿这样做! 您需要使用该DateFormat对象将String解析为Date或将日期格式化为String,然后打印返回的String。 请查看DateFormatSimpleDateFormat的API,以了解解析和格式化方法。

您将需要两个SimpleDateFormat对象:

  • 用于将第一种格式的字符串转换为日期的函数。
    • 您可以通过调用格式的parse(String s)方法来实现。
  • 另一个SimpleDateFormat将用于将Date格式化为第二种类型的String:
    • 您可以通过调用格式的format(Date d)方法来做到这一点。
    • 然后只需打印出此返回的字符串即可。
  • 您永远不要尝试打印DateFormat对象本身,因为这没有任何意义。

在打印DateFormat对象的结果时,需要将格式应用于Date并打印,而不是...

String formatted = dateFormat.format(tempDate);
System.out.println(" date format: "+ formatted);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM