使用 Joda Time 将日期字符串解析为 DateTime 对象
处理日期和时间数据时,通常需要转换日期作为字符串存储到结构化对象中以供进一步处理。 Joda Time 库提供了一套全面的工具,用于处理 Java 中的日期和时间操作。
一个常见任务是将日期字符串转换为 DateTime 对象。但是,如果字符串不是预期的格式,用户可能会遇到错误。让我们用一个具体的例子来解决这个问题。
Error: "Invalid format"
考虑以下代码:
DateTime dt = new DateTime("04/02/2011 20:27:05");
这段代码旨在从字符串创建 DateTime 对象。但是,它失败并显示错误“无效格式:“04/02/2011 14:42:17”在“/02/2011 14:42:17”处格式错误”。
解决方案:使用 DateTimeFormat
要解决该问题,我们需要指定日期字符串的预期格式。 Joda Time 为此提供了 DateTimeFormatter 类。这是更正后的代码:
DateTimeFormatter formatter = DateTimeFormat.forPattern("dd/MM/yyyy HH:mm:ss");
DateTime dt = formatter.parseDateTime("04/02/2011 20:27:05");
通过定义格式字符串,我们指示 Joda Time 如何解释输入字符串中的日期部分。在此示例中,格式模式指示应将字符串解析为日 (dd)、月 (MM)、年 (yyyy)、小时 (HH)、分钟 (mm) 和秒 (ss)。
一旦定义了格式化程序,我们就可以使用它来解析字符串并创建一个 DateTime 对象。生成的 dt 对象将具有指定的日期和时间组件。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3