当前位置: 首页 > 知识库问答 >
问题:

Groovy:处理不同的日期格式和转换

阎唯
2023-03-14

我是Groovy的新手。我的数据库中有以下日期:

1:00 AM

10:00 PM

1:00am(同上无空格)

1:00:00

13:00

13:00:00

共有1个答案

巢靖
2023-03-14

如果您使用的是Java8,则可以构造一个DateTimeFormatter,其中包含覆盖每个用例的可选模式:

def times = [
    '1:00 AM',
    '10:00 PM',
    '1:00AM',
    '1:00:00',
    '13:00',
    '13:00:00'
]

import java.time.LocalTime
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeFormatterBuilder;

DateTimeFormatter formatter = new DateTimeFormatterBuilder()
            .parseLenient()
            .appendPattern("[h:mm a][h:mm a][h:mma][H:mm:ss][H:mm][h:mm:SSa][hh:mm:SS a]")
            .toFormatter();

times.each {
    println LocalTime.parse(it, formatter)
}
 类似资料:
  • 我有两个字符串格式的日期:说,格式为。比较日期1和日期2的相等性的最佳方法是什么?我不关心时间,只关心日、年、月。我应该将它们转换为即时并进行比较吗?

  • 在从jax rs Web服务返回XML时,我们需要以不同的格式设置日期字段。 前任。 我们尝试了XMLAdapter,但无法确定它是用于字段date1还是date2 请告知。如果有任何其他过滤器或事件我可以使用

  • 我在webmatrix上使用经典的asp完成这项工作 在我的数据库中,存储的日期格式为MM/DD/YYYY

  • 问题内容: 我正在寻找一种简单的方法来将PHP日期格式(即Ymd H:i:s)转换为javascript日期格式(分别为YYYY-mm-dd HH:mm:ss)。 我不想转换日期 (这个问题已经有答案),我正在寻找工具/函数来 转换格式代码(我尚不知道,因为它是由用户在应用程序中定义的) 。 用户可以通过PHP date()即“ Y / m / d H:i”或“ YdmHi”定义的不同方式来定义它

  • 问题内容: 当我到达下面的df.date()行时,使用此格式的日期时应用程序崩溃: 致命错误:解开Optional值时意外发现nil 我也看到了这一点: 错误:执行被中断,原因:EXC_BAD_INSTRUCTION(代码= EXC_I386_INVOP,子代码= 0x0) 我有可以采用这种格式的字符串 但有时采用这种格式 这是在上述格式下崩溃的代码段: 如何使用基本一个功能处理两种格式? 问题答

  • 问题内容: 我有日期的字符串形式: 我想将其格式化为 我在用 但它不起作用。 我如何转换为? 问题答案: 试试这个 现在