0

大家好:有什么方法可以解析一个月 - 我的应用程序将同时使用荷兰语和英语,例如 10 月可能是十月或十月 - 并根据它设置一年中的相应月份?(例如 10 月 10 日)。

服务器总是回复一个字符串(这是荷兰语中的月份名称),但我需要解析它,因为应用程序也将使用英语)。

提前非常感谢!

4

1 回答 1

3

使用可识别区域设置的 DateFormat 符号。不要尝试硬编码月份名称。

DateFormatSymbols(Locale.DUTCH).getMonths()[Calendar.OCTOBER]; // returns Oktober

或者

Calendar.getDisplayNames(MONTH, ALL_STYLES, Locale.DUTCH); // returns a map which you can use to match strings

如果您从其他地方获取月份名称字符串,则可以将其转换为月份编号:

DateTime instance = format.withLocale(Locale.DUTCH).parseDateTime("Oktober");  
int monthNum = instance.getMonthOfYear();
于 2012-10-16T10:16:06.723 回答