我想把一个int值转换成一个日期。
例如,2020000605是2020-06-05。
这是我的代码,为什么不能用?
public static void main(String[] args) {
int value = 19000101;
SimpleDateFormat originalFormat = new SimpleDateFormat("yyyyMMdd");
Date date = originalFormat.parse(Integer.toString(value));
SimpleDateFormat newFormat = new SimpleDateFormat("yyyy-MM-dd");
String formatedDate = newFormat.format(date);
}
我在这行得到一个错误。
Date date = originalFormat.parse(Integer.toString(value));
错误信息是
类型不匹配:不能从java.util.Date转换为java.sql.Date。
我不知道这是什么意思。
我对java中的Date和SimpleDateFormat类了解不多,但无论如何,没有它,这应该是相当容易做到的。
String date_str = ""+value;
String formattedDate = date_str.substring(0,4)+"-"+date_str.substring(4,6)+"-"+date_str.substring(6,8);
你得到的错误。
Type mismatch: cannot convert from java.util.Date to java.sql.Date
说明你导入了一个错误的 Date
对象。请在类的顶部检查。你将需要替换 import java.sql.Date;
与 import java.util.Date;