次の int 変数があります。それを Date オブジェクトに変換したり、その逆に変換したりするにはどうすればよいですか。
int inputDate=20121220;
値を a に変換し、それをString
使用してオブジェクトSimpleDateFormat
に解析します。Date
int inputDate = 20121220;
DateFormat df = new SimpleDateFormat("yyyyMMdd");
Date date = df.parse(String.valueOf(inputDate));
逆も同様ですが、 を使用する代わりに を使用parse
し、結果から にformat
変換します。String
Integer
String s = date.format(date);
int output = Integer.valueOf(s);
別の方法として、 egerの表現を使用substring
して手動で解析することもできますが、これには反対することを強くお勧めします。String
Int
Calendar cal = Calendar.getInstance();
String input = String.valueOf(inputDate);
cal.set(Calendar.YEAR, Integer.valueOf(input.substring(0, 4)));
cal.set(Calendar.MONTH, Integer.valueOf(input.substring(4, 6)) - 1);
cal.set(Calendar.DAY_OF_MONTH, Integer.valueOf(input.substring(6)));
Date date = cal.getTime();