0

我有两个约会,一个来自 facebook,第二个来自 twitter,我怎样才能将它们转换成相同的格式。以下是我得到的日期

Facebook 日期 = 2012-07-05T13:17:13+0000 Twitter 日期 = 2012 年 7 月 5 日星期四 22:15:04 GMT+05:30

我们如何将两者转换为:2012 年 7 月 5 日 11:54:30 请帮我解决这个问题。谢谢

4

2 回答 2

0

SimpleDateFormat API在这里应该有很大帮助。

您需要创建其中两个,每个日期格式一个。然后您可以使用该parse()方法将它们转换为Date对象。

最后,您可以根据需要使用该format()方法将它们转换回字符串。

此外,这是使用 Java 时间,它不如 JODA 时间可取,但它可能对您有用。

于 2012-07-05T18:06:00.737 回答
0

这些功能用于将 facebook 和 twitter 日期转换为您喜欢的格式。

转换 Facebook 日期的功能:

String old_date="2012-07-05T13:17:13+0000";

private String Convert_Facebook_Date(String old_date) {

        SimpleDateFormat sdf = new SimpleDateFormat("dd-MMM-yyyy hh:mm:ss");
        SimpleDateFormat old = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ");
        sdf.setTimeZone(TimeZone.getDefault());

            Date date = null;
            try {

                date = old.parse(old_date); 

            } catch (ParseException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();    
            }

        return sdf.format(date);        
}

转换 Twitter 日期的函数:

String old_date="Thu Jul 05 22:15:04 GMT+05:30 2012";

private String Convert_Twitter_Date(String old_date) {

        SimpleDateFormat sdf = new SimpleDateFormat("dd-MMM-yyyy hh:mm:ss");
        SimpleDateFormat old = new SimpleDateFormat("EEE MMM dd HH:mm:ss ZZZZZ yyyy",Locale.ENGLISH);
        old.setLenient(true);

            Date date = null;
            try {

                date = old.parse(old_date);

            } catch (ParseException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

        return sdf.format(date);    
}

两种输出格式如:05-Jul-2012 11:54:30

于 2016-05-09T11:56:09.037 回答