2014-02-05 47 views
-1

如何将java中的2004-07-04T11:45:52转换为日期July 07, 2014转换2004-07-04T11:45:52截至2014年7月07日

我的工作:

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

你怎么能指望从2004年改为2014年的一天,从4改变到7? – Bohemian

回答

0

步骤1:创建一个​​格式化。

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

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); 
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日

0

乔达在处理日期时,时间是很好的选择(尽管这里的问题没有日期操作)。但乔达时间确实有助于简化,你可以编写类似以下内容:

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 
相关问题