2

我试过这样的事情

package com.poc;

import java.util.Date;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;


public class GetCurrentDateTime {
  public static void main(String[] args) {

       DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
       //get current date time with Date()
       Date date = new Date();
       System.out.println(dateFormat.format(date));

       //get current date time with Calendar()
       Calendar cal = Calendar.getInstance();
       System.out.println(dateFormat.format(cal.getTime()));

  }
}

2013-01-07 17:12:27的输出是:但希望输出是这样的2013-Jan-07 17:12:27 PM

如何在java中做到这一点?

最好的祝福

4

4 回答 4

3

你的格式应该是

yyyy-MMM-dd hh:mm:ss a
于 2013-01-07T11:45:26.653 回答
3

你的格式应该是

new SimpleDateFormat("dd-MMM-yy hh:mm:ss a");

2013 年 1 月 7 日下午 7:20:02

new SimpleDateFormat("dd-MMM-yy HH:mm:ss");

2013 年 1 月 7 日 19:20:02

于 2013-01-07T11:51:25.023 回答
2

改用这个:

DateFormat dateFormat = new SimpleDateFormat("yyyy-MMM-dd hh:mm:ss a");
于 2013-01-07T11:47:39.003 回答
2

Class SimpleDateFormat

Month:如果模式字母的数量为 3 个或更多,则将月份解释为文本;否则,它被解释为一个数字。

所以MM被解释为数字和MMM或更多被解释为文本(即月份名称

于 2013-01-07T11:50:19.980 回答