如何格式化我从Dropbox元数据调用到自定义表单的时间戳?

时间:2012-11-28 10:16:11

标签: java datetime dropbox simpledateformat dropbox-api

我想格式化从Dropbox API的元数据调用中获得的日期/时间。我已经阅读了有关格式化日期/时间的详细信息:Dropbox API Date format 但仍然不清楚。我使用JAVA并通过JSON检索元数据。我需要做的是

格式:星期四,2012年9月27日13:44:09 +0000 ----至---> 27/09/2012 13:44:09

我已经尝试过SimpleDateFormat,但它返回了我无法将字符串转换为日期时间格式的东西。提前谢谢。

3 个答案:

答案 0 :(得分:4)

试试这个:

SimpleDateFormat df = new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss Z", Locale.US);
Date date = df.parse("Thu, 27 Sep 2012 13:44:09 +0000");
System.out.println(date);

如果要将日期字符串转换为Date对象,可以使用SimpleDateFormat。创建对象时,请指定格式代码,然后使用parse() SimpleDateFormat方法解析字符串。如果指定正确的格式代码,也可以解析其他类型。

确保在实例化SimpleDateFormat时设置区域设置。如果您的VM默认语言环境是US,则无需语言环境即可正常运行。否则像CJK一样,您必须指定语言环境以防止解析错误。

有关更多详细信息,请参阅以下URL: http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html

答案 1 :(得分:2)

应该是这样的:

(省略处理异常)

                                            //Thu, 27 Sep 2012 13:44:09 +0000
SimpleDateFormat dfDb = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z");
Date dateDb = dfDb.parse(yourStringDateFromDb);
                                               //27/09/2012 13:44:09
SimpleDateFormat toYours = new SimpleDateFormat("dd/mm/yyyy HH:mm:ss");
String yourString = toYours.format(dateDb);

请参阅:java.text.SimpleDateFormat

答案 2 :(得分:0)

您应该使用RESTUtility#parseDate(String)来解析此值。

Dropbox API返回一个String,而不是Date。