2015-05-22 2 views
1

Вот мой код, который преобразует строку («12/05/2015») из textView в дату с тем же форматом, и я хочу получить от это день его дня недели.Android get Day of week from date возвращает разные значения за тот же день недели

String d1=((TextView)findViewById(R.id.tvDate2)).getText().toString(); 
    SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy"); 
    Date convertedDate = new Date(); 
    try { 
     convertedDate = dateFormat.parse(d1); 
    } catch (ParseException e) { 
     e.printStackTrace(); 
    } 
    Calendar c = Calendar.getInstance(); 
    c.setTime(convertedDate); 
    int day= c.get(Calendar.DAY_OF_WEEK); 
    System.out.println("day:"+day); 

при попытке 22/05/2015 (пятница) возвращает 4 но 29/05/2015 (также пятница) возвращает 6

так, где проблема

+1

дата ваш вклад не в правильном формате, должны быть 05/22/2015 – Yasel

+0

ах спасибо, что его формат даты –

ответ

2

Вы Мы перепутали месяц и день.

Либо измените формат на "dd/MM/yyyy", либо измените введенную строку даты на "05/22/2015".

2

У вас есть ваши месяцы и дни, которые были перевернуты в вашей строке формата. Попробуйте:

"dd/MM/yyyy" 
Смежные вопросы