String型の日付(yyyy-MM-dd)を計算して前日にしたいです。
前の画面で入力された日付 "2019-05-08" を次の画面で "2019-05-07" と表示させたいということで、
下記のコードのbirthdayにはString型の "2019-05-08" が入っていることとします。
文字列の"-"を"/"に入れ替えてカレンダー型に変換して、1日引く計算をしているつもりです。
Java
1Calendar cal = Calendar.getInstance(); 2 3cal.setTime(DateFormat.getDateInstance().parse(birthday.replace("-", "/"))); 4cal.add(Calendar.DATE, -1); 5 6model.addAttribute("cal", cal);
calをHTML上だと下記のように表示されます。
java.util.GregorianCalendar[time=1557154800000,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Tokyo",offset=32400000,dstSavings=0,useDaylight=false,transitions=10,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2019,MONTH=4,WEEK_OF_YEAR=19,WEEK_OF_MONTH=2,DAY_OF_MONTH=7,DAY_OF_YEAR=127,DAY_OF_WEEK=3,DAY_OF_WEEK_IN_MONTH=1,AM_PM=0,HOUR=0,HOUR_OF_DAY=0,MINUTE=0,SECOND=0,MILLISECOND=0,ZONE_OFFSET=32400000,DST_OFFSET=0]
回答1件
あなたの回答
tips
プレビュー