转换2004-07-04T11:45:52至2014年7月7日

时间:2014-02-05 09:19:16

标签: java date datetime

如何在java中将2004-07-04T11:45:52转换为日期July 07, 2014

我的工作:

SimpleDateFormat formatter = new SimpleDateFormat("MMMMMMM dd, yyyy");
String date = "2004-07-04T11:45:52";
String mdate = formatter.format(date);

4 个答案:

答案 0 :(得分:0)

第1步:使用format matching your input创建格式化程序。

第2步:使用parse而不是format来解析它。

答案 1 :(得分:0)

尝试这样的事情

 SimpleDateFormat form = new SimpleDateFormat("yyyy-dd-MM'T'HH:mm:ss");
 String inputdate = "2004-07-04T11:45:52";
    Date date = null;
    try {
        date = form.parse(inputdate);
    } catch (ParseException e) {
        e.printStackTrace();

    }
    SimpleDateFormat postFormater = new SimpleDateFormat("MMM dd, yyyy");
    String resultdate = postFormater.format(date);

答案 2 :(得分:0)

在您的输入中,您已将2004年作为年份,但您预计2014年的产出将是您无法获得的。但您将获得2004年而不是2014年。同样的问题也是一个月 以下示例将为您提供2004年7月4日的结果

String newstr = "2004-07-04T11:45:52";
SimpleDateFormat inFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
SimpleDateFormat outFormat = new SimpleDateFormat("MMM dd, yyyy");
Calendar c = Calendar.getInstance();
c.setTime(inFormat.parse(newstr));
System.out.println(outFormat.format(c.getTime()));

<强>输出 2004年7月4日

答案 3 :(得分:0)

在处理日期时,Joda时间是不错的选择(尽管这里的问题没有日期操作)。但是Joda时间确实有助于简化,你可以写下如下内容:

public static void dateTest()
{
    String date = "2004-07-04T11:45:52";
    DateTime dateTime = new DateTime(date);
    System.out.println(dateTime);
    System.out.println(dateTime.toString("MMMM dd, yyyy"));
}

这会给:

2004-07-04T11:45:52.000+04:00
July 04, 2004