如何将 yyyy-MM-dd hh:mm:ss 格式转换为 2013年11月20日。格式以供显示之用?
感谢。
答案 0 :(得分:1)
你需要这个实用工具方法来追加th
或nd
,我没有写它,我从某处复制到我的代码中(现在不记得了):
public class NumberUtils {
public static String ordinal(int i) {
String[] sufixes = new String[] { "th", "st", "nd", "rd", "th", "th",
"th", "th", "th", "th" };
switch (i % 100) {
case 11:
case 12:
case 13:
return i + "th";
default:
return i + sufixes[i % 10];
}
}
}
将其与其他答案相结合,以获得所需的结果。
答案 1 :(得分:0)
long yourmilliseconds =System.currentTimeMillis();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss,SSS",Locale.US);
GregorianCalendar calendar = new GregorianCalendar(TimeZone.getTimeZone("US/Central"));
calendar.setTimeInMillis(yourmilliseconds);
time1=sdf.format(calendar.getTime());
time1 = time1.substring(0, time1.indexOf(","));
答案 2 :(得分:0)
您可以使用http://developer.android.com/reference/java/text/SimpleDateFormat.html
像这样:SimpleDateFormat sourceFormat = new SimpleDateFormat("MM/dd/yyyy hh:mm:ss a");
SimpleDateFormat desiredFormat =new SimpleDateFormat("EEE,dd-MMM-yyyy");
Date dt = sourceFormat.parse(your_date);
String desiredDateString = desiredFormat.format(dt)
答案 3 :(得分:0)
试试这个:
DateFormat inputFormat = new DateFormat("yyyy-MM-dd hh:mm:ss");
DateFormat outputFormat = new DateFormat("MMMM, dd yyyy");
Date date = inputFormat.parse("2013-11-28 00:52:19");
System.out.println(outputFormat.format(date));
您可以使用this document作为参考。
答案 4 :(得分:0)
你可以做类似的事情。
SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
Date date=df.parse("2013-11-20 12:00:00");
df=new SimpleDateFormat("MMMM, dd'th' yyyy");
System.out.println(df.format(date));
Out put
November, 20th 2013