我正在从UI获取日期格式“Mon Sep 02 17:00:00 PDT 2019”以进行处理。但是我想转换成09022019。下面的代码我试过,但转换到一天前。
sampleDate = Mon Sep 02 17:00:00 PDT 2019
sdf = new SimpleDateFormat("MMddyyyy")
sdf.format(sampleDate)
我正在09012019,但预计日期09022019。
请帮忙。
您需要为SimpleDateFormat
添加setTimeZone
。
默认情况下,如果未指定,SimpleDataFormat将使用系统的默认时区。只需将代码的第二行更改为sdf=newsimpledateformat(“MMddyyyy z”)
即可进行检查。也许这就是你得到09012019的原因。
还有一件事<代码>时区。getTimeZone(“PDT”)不返回PDT的时区对象。我猜是因为PDT不是一个时区,而是一个伪时区。然后我们将使用类似<code>TimeZone.getTimeZone(“America/Los_Angeles”)
sdf = new SimpleDateFormat("MMddyyyy")
sdf.setTimeZone(TimeZone.getTimeZone("America/Los_Angeles"))
sdf.format(sampleDate)
无论系统时区如何,都将返回09022019。
假设您使用的是 Java 8 和 Groovy 2.5 ,则可以使用 Java 8 日期/时间 API:
import java.time.*
new Date("Mon Sep 02 17:00:00 PDT 2019").toZonedDateTime().format('MMddyyy')
我有一个类似以下的值,我希望将其转换为 如何转换这个?
问题内容: 字段定义 二传手 有谁知道如何将“零日期”转换为适当的值?因为我有错误: 即使我像这样设置“默认”字段和设置器: 我仍然会有同样的问题。 问题答案: 在这里,我将大胆猜测您正在使用MySQL :-)它使用“零日期”作为特殊占位符 -不幸的是,JDBC默认情况下无法处理它们。 解决方案是将“ zeroDateTimeBehavior = convertToNull”指定为MySQL连接的
问题内容: 字段定义 二传手 有谁知道如何将“零日期”转换为适当的值?因为我有错误: 即使我像这样设置“默认”字段和设置器: 我仍然会有同样的问题。 问题答案: 在这里,我将做出一个疯狂的猜测,即您正在使用MySQL :-)它使用“零日期”作为特殊的占位符 -不幸的是,默认情况下JDBC无法处理它们。 解决方案是将“ zeroDateTimeBehavior = convertToNull”指定为
我有一个具有值的日期对象:- 星期一9月12日19:48:19 IST 2022 //上面代码的输出Mon Sep 12 19:48:19 IST 2022 现在我想得到这个类似2022-09-12 00:00:00.0格式的输出
这就是我所拥有的。
我需要在我的dim_date中添加新的业务wee,实际上我有一个月中的星期,如下表所示,每7天计算一次。 但是对于这个商业周专栏,一周应该从星期一开始,到星期日结束,即使第一周只有一天(当一个月从星期日开始时),但如果月份从星期五开始,我应该将其视为该月的第一周。 你有什么建议来计算这个吗?谢谢