我想将String
转换为Date
。我的代码:
String maturityDate = "20150722";
SimpleDateFormat formatter = new SimpleDateFormat("yyyymmdd");
Date date = formatter.parse(maturityDate);
System.out.println(date);
预期结果:
Input 20150722
Output Wed Jul 22 00:07:00 IST 2015
实际结果:
Input 20150722
Output Thu Jan 22 00:07:00 IST 2015
可能是什么原因?
答案 0 :(得分:5)
可能是什么原因?
原因是m
字母表示SimpleDateFormat
模式中的分钟。你的意思是M
几个月。
<强>解强>
将格式从yyyymmdd
更改为yyyyMMdd
。
SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd");
在API中,您会找到完整列表:
M Month in year Month July; Jul; 07
m Minute in hour Number 30