首页 > Java > java教程 > 正文

解析日期字符串时如何修复 ParseException?

DDD
发布: 2024-11-15 17:06:03
原创
931 人浏览过

How to Fix ParseException When Parsing Date Strings?

如何处理日期字符串解析异常

将日期字符串解析为 Date 对象有时会导致异常,如以下代码所示:

String target = "Thu Sep 28 20:29:30 JST 2000";
DateFormat df = new SimpleDateFormat("E MM dd kk:mm:ss z yyyy");
Date result =  df.parse(target);
登录后复制

此代码抛出以下异常:

java.text.ParseException: Unparseable date: "Thu Sep 28 20:29:30 JST 2000"
登录后复制

此错误的原因是用于解析的模式与日期字符串的格式不匹配。具体来说,该模式需要 3 个字母的日缩写 (EEE) 和 3 个字母的月份缩写 (MMM),但日期字符串包含 2 个字母的日缩写 (E) 和完整的月份名称 (Sep)。

要纠正此问题,应更新模式以匹配日期字符串的格式:

DateFormat df = new SimpleDateFormat("EEE MMM dd kk:mm:ss z yyyy", Locale.ENGLISH);
登录后复制

此外,指定区域设置可确保正确解释日期和月份缩写,即使平台默认区域设置不是英语。

使用更正后的模式,代码现在可以成功解析日期字符串并返回一个表示字符串中指定的日期和时间的 Date 对象,并根据当前时区进行调整:

Thu Sep 28 07:29:30 BOT 2000
登录后复制

以上是解析日期字符串时如何修复 ParseException?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板