问题不是重复,请不要混淆。它主要解决了如何无法在Date中存储String类型的变量,但是可以在强制转换后对其进行格式化。标记为“重复”的另一个答案是Vage,与之无关...
我正在尝试将String X = ""01021990";
转换为数据类型Date,但是每次存储它时,都会出现无法转换的错误
这是可行的方法:
String date = "01062014";
DateFormat dateInput = new SimpleDateFormat("MMddyyyy");
DateFormat desireDate = new SimpleDateFormat("MM/dd/yyyy");
System.out.println(desireDate.format((Date)dateInput.parse(date)));
这是我试图做的不起作用的事情:
DateFormat inputDate = new SimpleDateFormat("MMddyyyy");
DateFormat desireDateFormat = new SimpleDateFormat("MM/dd/yyyy");
Date xs = desireDateFormat.format((Date)inputDate.parse(date));
但是,如果我仅打印它,它将起作用:
System.out.println(desireDateFormat.format((Date)inputDate.parse(date)));
但是我试图将其存储到数据类型Date中,以便可以将其传递给构造函数。
谢谢
答案 0 :(得分:2)
desireDateFormat.format((Date)inputDate.parse(date))
返回字符串。当然,您可以println,但不能将String
强制转换为Date
,这将起作用:Date xs = inputDate.parse(date);