我有一个带有以下内容的 int 变量。如何将其转换为 Date 对象,反之亦然。
int inputDate=20121220;
将值转换为 aString
并用于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
并手动解析String
您的Int
eger 的表示,但我强烈建议您不要这样做:
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();