gpt4 book ai didi

java - 迄今为止的字符串格式不正确

转载 作者:行者123 更新时间:2023-12-02 09:07:33 25 4
gpt4 key购买 nike

我正在尝试用 Java 进行简单的字符串到日期的转换。我正在从一些日志中略读日期,需要将其转换为日期以进行一些处理。出现的日期将如下所示:

2012-09-07 19:53:33

在我的代码中,当我尝试将其转换为 Date 对象时,我得到了一个完全不同的日期。我的代码如下所示:

String taskStart = "2012-09-07 19:53:33";  
String dateFormat = "yyyy-MM-dd hh:MM:ss";
SimpleDateFormat dateFormat=new SimpleDateFormat(format);
Date taskStartDate = dateFormat.parse(taskStart);

我得到的输出是这样的:

Sat May 07 19:00:27 PDT 2016

如何简单地将原始日期转换为正确的格式?

最佳答案

  1. 您已指定MM (一年中的一个月)两次。 “分钟”的 m 必须小写。
  2. 如果您采用 24 小时制时间,则需要指定 HH为了捕获 0-23 范围内指定的小时数,而不是 hh预计 AM/PM 小时(1-12 范围内的小时,其中 AM/PM 说明符作为时间字符串的一部分)
  3. 最后,您的示例代码没有定义 format您传递给 SimpleDateFormat 的构造函数的变量目的。事实上,您使用的是变量名称 dateFormat两次并且没有定义 format完全可变 - 至少不是根据您在问题中包含的代码。

所以,我相信你正确的格式字符串应该是......

"yyyy-MM-dd HH:mm:ss"

...完整、正确的代码示例是:

String taskStart = "2012-09-07 19:53:33";  
String format = "yyyy-MM-dd HH:mm:ss";
SimpleDateFormat dateFormat=new SimpleDateFormat(format);
Date taskStartDate = dateFormat.parse(taskStart);

关于java - 迄今为止的字符串格式不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12324663/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com