GWT字符串到目前为止 - 具有3位数的月份

时间:2012-06-25 13:54:46

标签: java gwt datetime-format

我是GWT(2.3)的新手,想要采用以下格式的整数(或字符串):

2012006

并将其格式化为

1206

我知道我可以轻松地使用字符串操作但是因为2012年是年份而006是月份(6月)我正在尝试使用GWT DateTimeFormat来完成它但是我正在努力应对荒谬的3位数月份格式。

请帮忙

./ CJ

3 个答案:

答案 0 :(得分:1)

使用

DateTimeFormat fmt = DateTimeFormat.getFormat("yyyy'0'MM");
Date date = fmt.parse("2012006");

将您描述的格式的字符串解析为日期。

使用

DateTimeFormat out = DateTimeFormat.getFormat("yyMM");
out.format(date);

将日期格式化为所需格式。

其他解析注意事项([DateTimeFormat])1

  

使用缩写年份模式(“yy”)解析日期字符串时,解析器必须解释相对于某个世纪的缩写年份。它通过将日期调整为创建解析器实例之前的80年和之后20年来实现此目的。例如,使用1997年1月1日创建的“MM / dd / yy”模式和DateTimeFormat对象,字符串“01/11/12”将被解释为2012年1月11日,而字符串“05/04 / 64“将被解释为1964年5月4日。

答案 1 :(得分:0)

只需使用引号将前0解释为文字。请尝试以下方法:

DateTimeFormat.getFormat("yyyy'0'MM")

答案 2 :(得分:0)

试试这个,你会得到你想要的结果

public class DateWala {

    public static void main(String[] args){


        System.out.println(new SimpleDateFormat("YYMM").format(new Date()));
    }

}