我正在尝试将MDT的日期从2009年5月15日19:24:11转换为20090515192411。但是,当我尝试以下代码时,readformat本身会将输入作为5月16日而不是5月15日。
这是我的代码。
String dateInString = "May 15, 2009 19:24:11 PM MDT";
DateFormat readFormat = new SimpleDateFormat( "MMM dd, yyyy hh:mm:ss a z");
DateFormat writeFormat = new SimpleDateFormat("yyyyMMddHHmmss");
Date date = null;
try {
date = readFormat.parse(dateInString);
}
catch(ParseException e) {
e.printStackTrace();
}
System.out.println(date); // Prints May 16, 2009 07:24:11 AM MDT
String formattedDate = "";
if( date != null ) {
formattedDate = writeFormat.format(date);
}
System.out.println(formattedDate); // Prints 20090516072411
我在这里先向您的帮助表示感谢。
你需要HH
的,而不是hh
阅读24小时格式的时间。Java的“宽大日期”在这里-19:24 pm被解析为11:24 pm之后的8个小时。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句