不正确的日期格式转换:日期解析故障排除
问题:将 Java 中的日期从一种格式转换为另一种格式结果月份不准确。
输入和预期输出:
代码示例:
String dateStr = "2011-12-15"; String fromFormat = "yyyy-mm-dd"; String toFormat = "dd MMMM yyyy"; try { DateFormat fromFormatter = new SimpleDateFormat(fromFormat); Date date = (Date) fromFormatter.parse(dateStr); DateFormat toformatter = new SimpleDateFormat(toFormat); String result = toformatter.format(date); } catch (ParseException e) { e.printStackTrace(); }
诊断:
当前问题在“fromFormat”变量。在代码中,它被错误地设置为“yyyy-mm-dd”,它期望“mm”代表分钟。但是,日期格式应使用“MM”来表示月份。
解决方案:
要解决问题并获取正确的月份,“fromFormat”变量应该修改为以下内容:
String fromFormat = "yyyy-MM-dd";
通过进行此更正,程序将正确地将“MM”识别为月份,确保使用适当的月份值来解析日期。这将随后产生“2011 年 12 月 15 日”的预期输出。
以上是为什么我的 Java 日期转换显示错误的月份?的详细内容。更多信息请关注PHP中文网其他相关文章!