从字段格式化日期

时间:2012-03-27 11:59:48

标签: gwt date-formatting

我使用SmartGwt,我有以下几行:

formItem.getForm().getField("report_date").getValue().toString();

返回如下内容: Tue Mar 27 12:00:00 EEST 2012

我需要将其格式化为 DateDisplayFormat.TOUSSHORTDATE (格式为MM / DD / YYYY的短日期)。

对此有何建议?我尝试了几件事,但没有奏效。感谢。

3 个答案:

答案 0 :(得分:3)

您可以在客户端格式化Date对象,如下所示:

DateTimeFormat.getFormat(DateTimeFormat.PredefinedFormat.HOUR24_MINUTE).format(myDate);

PredefinedFormat枚举包含一些有用的预定义格式。如果这些都不适合您,您可以定义自己的。

答案 1 :(得分:1)

看看SimpleDateFormat。这可以用于解析原始格式以及在第二个格式中输出。

编辑:看来你已经有了一个日期(在调用toString之前)。这让事情变得容易一些。您可以将第二种格式创建为new SimpleDateFormat("MM/dd/yyyy")

答案 2 :(得分:1)

java中的任何日期格式都会看到这个 http://docs.oracle.com/javase/1.4.2/docs/api/java/text/SimpleDateFormat.html

    String sff = "Tue Mar 27 12:00:00 EEST 2012";

    SimpleDateFormat dateFormat = new SimpleDateFormat(
            "EEE MMM dd hh:mm:ss Z yyyy");

    Date myDate = null;
    try {
        myDate = dateFormat.parse(sff);
    } catch (ParseException e) {
        e.printStackTrace();
    }

    SimpleDateFormat timeFormat = new SimpleDateFormat("MM/dd/yyyy");
    String finalDate = timeFormat.format(myDate);