Calendar.MONTH gives wrong value

后端 未结 6 1958
醉酒成梦
醉酒成梦 2020-12-19 01:14

I\'m trying to get the actual month from the Calendar using the following:

Calendar c = Calendar.getInstance();          
String time = String.v         


        
相关标签:
6条回答
  • 2020-12-19 01:24

    Calendar.MONTH

    returns

    0 for 1st month (jan)
    1 for 2nd month (feb)
    .
    .
    11 for 12th month (dec)
    

    Docs

    So change your code to

    String time = String.valueOf(c.get(Calendar.MONTH)+1);// added 1 
    
    0 讨论(0)
  • 2020-12-19 01:25

    Calendar.MONTH value starts from 0 to 11 not 1 to 12.

    You may check the value of Calendar.JANUARY is 0 not 1.

    Refer: http://developer.android.com/reference/java/util/Calendar.html#JANUARY

    0 讨论(0)
  • 2020-12-19 01:26

    I suggest trying

    @Override
    public void onSelectedDayChange(CalendarView view, int year, int month, int day) {
    Toast.makeText(getApplicationContext(), month+1 + "/" + day  + "/" + year, Toast.LENGTH_SHORT).show();
    calDate = month+1 + "/" + day + "/" + year; }
    });
    
    0 讨论(0)
  • 2020-12-19 01:31

    Keep in mind that months values start from 0, so October is actually month number 9.

    http://docs.oracle.com/javase/1.4.2/docs/api/java/util/Calendar.html#MONTH

    0 讨论(0)
  • 2020-12-19 01:36

    Calendar.MONTH returns month which is zero based that is why it is giving 1 less than actual month Add 1 to get correct value

    String time = String.valueOf(c.get(Calendar.MONTH)+1);
    
    0 讨论(0)
  • 2020-12-19 01:43

    use this

        public void DateDialog(){
    
        DatePickerDialog.OnDateSetListener listener=new DatePickerDialog.OnDateSetListener() {
            @Override
            public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth)
            {
                int Month;
                Month=monthOfYear+1;
                fromDate.setText(year + "-" + Month + "-" + dayOfMonth);
            }};
        DatePickerDialog dpDialog=new DatePickerDialog(getActivity(), listener, year, month, day);
        dpDialog.getDatePicker().setMinDate(mcalendar.getTimeInMillis());
        dpDialog.show();
    }
    
    0 讨论(0)
提交回复
热议问题