如何在Groovy中将Integer转换为月份名称?

时间:2013-09-18 09:13:08

标签: groovy gremlin

我得到一个整数,我需要在当前语言环境中转换为月份名称:

locale en-us示例: 1 - >一月 2 - >二月

我在gremlin中的代码示例:

.....groupBy{[it[3], it[2].getMonth()]}{it[1]}{it.sum()}.cap().scatter().transform{[Name:it.key,Tx:it.value]}

在这里我得到:

==>{Name=[ABC, 7], Tx=1750.0}

我想要名称格式的月份整数。

我试过了,

it[2].getMonth().toString() and also as cal.get(Calendar.MONTH) etc。但没有成功。

2 个答案:

答案 0 :(得分:3)

要将月份整数转换为字符串,您可以执行以下操作:

String month = new java.text.DateFormatSymbols().months[ 4 ]

assert month == 'May'

答案 1 :(得分:0)

考虑这三种方法,我希望这些可以帮到你。

1)您可以通过将月份作为整数

来执行以下操作
import java.text.DateFormatSymbols;
public String getMonth(int month) {
return new DateFormatSymbols().getMonths()[month-1];
}

2)您可以通过提供日期来完成以下操作

SimpleDateFormat dateFormat = new SimpleDateFormat( "LLLL", Locale.getDefault() );
dateFormat.format( date );

3)使用SimpleDateFormat。

import java.text.SimpleDateFormat;

public String formatMonth(String month) {
SimpleDateFormat monthParse = new SimpleDateFormat("MM");
SimpleDateFormat monthDisplay = new SimpleDateFormat("MMMM");
return monthDisplay.format(monthParse.parse(month));
}
formatMonth("2"); //Result: February