Получить дату понедельника текущей недели

У нас есть утилита, которая будет работать в любой день с понедельника по пятницу. Он обновит некоторое количество файлов внутри инструмента управления контентом. Датой последнего изменения, связанной с этим файлом, должна быть дата понедельника этой недели. Я написал следующую программу, чтобы получить дату понедельника на текущей неделе. Но я все еще не уверен, будет ли это работать для всех сценариев. Есть ли у кого-нибудь лучшее решение?

Calendar c = Calendar.getInstance();
c.setTime(new Date());
System.out.println(c.get(Calendar.DAY_OF_MONTH));
System.out.println(c.get(Calendar.DAY_OF_WEEK));
int mondayNo = c.get(Calendar.DAY_OF_MONTH)-c.get(Calendar.DAY_OF_WEEK)+2;
c.set(Calendar.DAY_OF_MONTH,mondayNo);
System.out.println("Date "+c.getTime());
25
задан Duncan Jones 31 October 2014 в 20:03
поделиться