有没有办法以下面解释的格式格式化日期

Is there a way to format Date in the format explained below

我有一个由 new Date();

创建的日期对象

当我做的时候

 String.valueOf(new Date()) 

我明白了

"Mon Jan 10 11:11:11 PST 2015"

有没有办法格式化成下面的格式:

Monday Jan 10, 2015 at 5:15 PM

我尝试了 DateFormat 及其所有示例,但无法以所需的格式获取它。

Date curDate = new Date();

   System.out.println(curDate.toString());

        String DateToStr = DateFormat.getInstance().format(curDate); System.out.println(DateToStr);

        DateToStr = DateFormat.getTimeInstance().format(curDate); System.out.println(DateToStr);

        DateToStr = DateFormat.getDateInstance().format(curDate);             System.out.println(DateToStr);

        DateToStr = DateFormat.getDateTimeInstance().format(curDate);
        System.out.println(DateToStr);

        DateToStr = DateFormat.getTimeInstance(DateFormat.SHORT).format(curDate);
        System.out.println(DateToStr);

        DateToStr = DateFormat.getTimeInstance(DateFormat.MEDIUM).format(curDate);
        System.out.println(DateToStr);

        DateToStr = DateFormat.getTimeInstance(DateFormat.LONG).format(curDate);
        System.out.println(DateToStr);

        DateToStr=
DateFormat.getDateTimeInstance(DateFormat.MEDIUM,DateFormat.SHORT).format(curDate)
        System.out.println(DateToStr);

如果我理解你的问题,那么是的。使用 SimpleDateFormat

之类的文档中给出的模式字母
public static void main(String[] args) {
    String fmtString = "EEEE MMM d, yyyy 'at' h:mm a";
    // E - Day name in week 
    // M - Month in year
    // d - Day in month
    // y - Year
    // The constant String at
    // h - Hour in am/pm (1-12)
    // m - Minute in hour
    // a - Am/pm marker
    DateFormat sdf = new SimpleDateFormat(fmtString);
    try {
        Date d = sdf.parse("Monday Jan 10, 2015 at 5:15 PM");
        System.out.println(sdf.format(d));
    } catch (ParseException e) {
        e.printStackTrace();
    }
}

注意 2015 年 1 月 10 日是 星期六