如何将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);
如何将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);
步骤1:创建一个格式化。
步骤2:使用parse
而不是format
来解析它。
尝试这样的事情
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);
在你输入你给一年,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日
乔达在处理日期时,时间是很好的选择(尽管这里的问题没有日期操作)。但乔达时间确实有助于简化,你可以编写类似以下内容:
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
你怎么能指望从2004年改为2014年的一天,从4改变到7? – Bohemian