解决方法
这应该没问题.
这取决于日期的格式.
如果你试试2011年2月1日
它会工作,只需根据您的需要更改此字符串“MMMM d,yyyy”.
检查this是否有所有格式模式.
而且,月份基于0,所以如果你想1月份为1,那么只需返回第1个月
private static int getMonth(String date) throws ParseException{ Date d = new SimpleDateFormat("MMMM d,yyyy",Locale.ENGLISH).parse(date); Calendar cal = Calendar.getInstance(); cal.setTime(d); int month = cal.get(Calendar.MONTH); return month + 1; }
如果你想要月份名称试试这个
private static String getMonth(String date) throws ParseException{ Date d = new SimpleDateFormat("MMMM d,Locale.ENGLISH).parse(date); Calendar cal = Calendar.getInstance(); cal.setTime(d); String monthName = new SimpleDateFormat("MMMM").format(cal.getTime()); return monthName; }
正如我所说,检查我发布的所有格式模式的网页.如果您只需要3个字符的月份,请使用“MMM”而不是“MMMM”