Java J2ME中的日期问题

Java J2ME中的日期问题,java,java-me,Java,Java Me,直截了当地说这个。假设今天的日期是2015年6月16日,设备日期与此匹配。我试着用这个格式读,16062015。然而,该日期比16052015晚了一个月。我的代码: public String getDate() { Calendar cal = Calendar.getInstance(); int day = cal.get(Calendar.DAY_OF_MONTH); int month = cal.get(Calendar.MONTH); int yea

直截了当地说这个。假设今天的日期是2015年6月16日,设备日期与此匹配。我试着用这个格式读,16062015。然而,该日期比16052015晚了一个月。我的代码:

public String getDate() {
    Calendar cal = Calendar.getInstance();
    int day = cal.get(Calendar.DAY_OF_MONTH);
    int month = cal.get(Calendar.MONTH);
    int year = cal.get(Calendar.YEAR);
    String dayString = String.valueOf(day);
    String monthString = String.valueOf(month);
    String yearString = String.valueOf(year);
    String date = dayString + "0" + monthString + yearString;
    return date;
}
可能是什么问题


这是在J2ME中实现的。设备:诺基亚206。

显示为ISO日期的使用Jan作为
1
。根据文档,月份字段以0为基数,因此Jan为
0


显示为ISO日期的日期使用一月作为
1
。根据文档,月份字段以0为基数,因此Jan为
0


显示为ISO日期的日期使用一月作为
1
。根据文档,月份字段以0为基数,因此Jan为
0


显示为ISO日期的日期使用一月作为
1
。根据文档,月份字段以0为基数,因此Jan为
0

返回1月的0,2月的1。。。这就是为什么代码的行为方式是这样的。因此,一个简单的解决方法是:

int month = cal.get(Calendar.MONTH) + 1;
顺便说一下:在10月、11月和12月,你会遇到另外一个问题。(提示:它们有两个数字。)

返回1月的0,2月的1。。。这就是为什么代码的行为方式是这样的。因此,一个简单的解决方法是:

int month = cal.get(Calendar.MONTH) + 1;
顺便说一下:在10月、11月和12月,你会遇到另外一个问题。(提示:它们有两个数字。)

返回1月的0,2月的1。。。这就是为什么代码的行为方式是这样的。因此,一个简单的解决方法是:

int month = cal.get(Calendar.MONTH) + 1;
顺便说一下:在10月、11月和12月,你会遇到另外一个问题。(提示:它们有两个数字。)

返回1月的0,2月的1。。。这就是为什么代码的行为方式是这样的。因此,一个简单的解决方法是:

int month = cal.get(Calendar.MONTH) + 1;

顺便说一下:在10月、11月和12月,你会遇到另外一个问题。(提示:它们有两位数字。)

根据文档,月份从0开始索引:您是否使用1作为一月而不是0?根据文档,月份从0开始索引:您是否使用1作为一月而不是0?根据文档,月份从0开始索引:您是否使用1作为一月而不是0?根据文档,月份从0开始编制索引:是否使用1作为一月而不是0?