我正在尝试解析一个看起来像的字符串:
2015, 2, 31, 17, 0, 1
所以我想我会用
SimpleDateFormat("yyyy, MM, dd, hh, mm, ss")
但它假设月份是1。在这种情况下,月份(2)是3月。如何告诉SimpleDateFormat或任何其他类使用从零开始的月份进行解析?
答案 0 :(得分:4)
使用Calendar:
String[] yourString = "2015, 2, 31, 17, 0, 1".split(",");
Calendar c = new GregorianCalendar();
c.set(Calendar.YEAR, Integer.valueOf(yourString[0]));
c.set(Calendar.MONTH, Integer.valueOf(yourString[1]));
c.set(Calendar.DAY_OF_MONTH, Integer.valueOf(yourString[2]));
c.set(Calendar.HOUR_OF_DAY, Integer.valueOf(yourString[3]));
c.set(Calendar.MINUTE, Integer.valueOf(yourString[4]));
c.set(Calendar.SECOND, Integer.valueOf(yourString[5]));
答案 1 :(得分:0)
我可以看到一个解决方案
增加一个月Date newDate = DateUtils.addMonths(new Date(), 1);
使用日历
Calendar cal = Calendar.getInstance();
cal.add(Calendar.MONTH, 1);
默认情况下,月份为0的索引。见