Java中的整数转换日期

我有一个int变量跟随。 如何将其转换为Date对象,反之亦然。

int inputDate=20121220; 

将值转换为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); 

另一种方法是使用substring并手动解析Int eger的String表示,尽管我强烈建议你不要这样做:

 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();