如何把日期转换成不同的格式?
其他问答
1
我从 api 服务器中获取一些数据,包含数据和数据格式
2013-09-06T14:15:11.557
。
这是什么格式呢?如何把这个数据格式转换为
2013 sept 06 2:15
我使用下面2中方法来转换日期格式
public static Date stringToDate(String dateString)
{
Date date = null;
DateFormat df = new SimpleDateFormat(Constants.DATE_FORMAT_WITHOUT_TIME);
try {
date = df.parse(dateString);
} catch (ParseException e) {
e.printStackTrace();
}
return date;
}
和
public static String FormatDate(String dateString)
{
String s="";
Date date = stringToDate(dateString);
s = date.getDate()+" "+monthname[date.getMonth()+1]+" "+(date.getYear()+1900);
return s;
}
这是我的数据格式常量
public static final String DATE_FORMAT_WITHOUT_TIME = "yyyy-MM-dd";
,但是解析的不正确。
-
你确信是sept,不是Sep,那样就简单多了。
下面是sept的代码。
String fromFormat = "yyyy-MM-dd'T'hh:mm:ss.S"; String toFormat = "yyyy '%s' dd h:m"; String monthFormat = "MMMM"; SimpleDateFormat sdf = new SimpleDateFormat(fromFormat); Date d = sdf.parse("2013-09-06T14:15:11.557"); sdf = new SimpleDateFormat(toFormat); String s = sdf.format(d); String m = new SimpleDateFormat(monthFormat, Locale.ENGLISH).format(d); s = String.format(s, m.substring(0, 4).toLowerCase()); System.out.println(s);
-
你可以试一下下面的代码:
String date="2013-09-06T14:15:11.557"; DateFormat df=new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS"); Date d=df.parse(date); df=new SimpleDateFormat("yyyy-MMM-dd hh:mm"); System.out.println(df.format(d));
输出:
2013-Sep-06 02:15
发表回复