- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个简单的 jUnit 测试 DateTimeFormatterBuilder
。在运行时它可以工作,当一些 String
来自 Spring-MVC 处理程序 ( @RequestParam
)
在测试时它失败并显示相同的 String
值。
测试值:25-May-2018 11:10
待测试方法:
public void getTimeDifference(@RequestParam String startDate, @RequestParam String endDate) {
DateTimeFormatter DATE_TIME_FORMAT = new DateTimeFormatterBuilder().parseCaseInsensitive().appendPattern("dd-MMM-yyyy HH:mm").toFormatter();
LocalDateTime.parse(startDate,DATE_TIME_FORMAT);
return messages;
}
测试方法:
@Test
public void testFormat() throws Exception {
final String startDateFormatA = "25-May-2018 11:10";
final String endDateFormatA = "25-May-2018 11:10";
assertEquals("06:00", callDbController.getTimeDifference(startDateFormatA, endDateFormatA)[1]);
}
我的测试:在运行时我设置了一个断点并在显示 View 上测试它:
LocalDateTime.parse("25-May-2018 11:10",DATE_TIME_FORMAT)
在测试时使用相同的 spring-aplication-context 我执行与运行时相同的操作,但失败了。
有人有想法吗?
最佳答案
月份名称是英文,所以你最好在格式化程序中设置一个java.util.Locale
。
如果不设置,格式化程序将使用 JVM 默认区域设置。如果不是英语,您可能会收到错误(不同的环境可能有不同的配置,因此最好设置语言环境,而不是依赖 JVM 的默认值)。
只需执行 toFormatter(Locale.ENGLISH)
而不是 toFormatter()
即可。
关于java DateTimeFormatterBuilder 在测试时失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50526234/
我已经配置了格式化程序: public static final DateTimeFormatter DATE_FORMATTER = new DateTimeFormatterBuilder()
这个问题已经有答案了: Parsing LocalDate in Java: What's the pattern for "March 26 2020" (2 个回答) 已关闭 2 年前。 我有一个
假设我有一个日期,例如: Nov 30, 2013 19:00:00.001930000 Eastern Standard Time 我正在尝试使用 DateTimeFormatterBuilder
我正在使用 DateTimeFormatterBuilder() 来转换我接收的 JSON 数据(注释代码)并将它们转换为两种格式之一。为了决定使用哪种格式,我使用 REGEX 来查找正方形、 []
我正在尝试将以下时间戳解析为 ZonedDateTime: Sun Jan 20 16:08:59 +0000 2019 我喜欢尽可能避免使用在字符串中定义的模式,因为我经常忘记字符代表什么(“哈,'
我正在尝试创建一个 DateTimeFormatter以匹配以下示例(它实际上比这稍微复杂一些,但这无关紧要)。 20180302-17:45:21 我写了以下内容,但它导致了异常: new Date
我需要解析各种格式的日期。其中一些缺少“日”。现在我想默认到月底。我不确定是否有直接的方法可以默认为月底 DateTimeFormatter f = new DateTimeFormatterBuil
先写代码。 @Test public void testDateFormat() { // this is ok DateTimeFormat.forPattern("yyyy-MM-
目标 为可以处理以下格式之一的输入的 LocalDate 实例提供灵活的解析器: 年 年月 年月日 实现尝试 下面的类尝试处理第一个和第二个模式。解析适用于年份输入,但年份 + 月份会导致下面列出的异
我的要求是根据指定的一组有效格式验证日期字符串的格式是否正确。 有效格式: MM/dd/yy MM/dd/yyyy 我创建了一个简单的测试方法,它使用 Java 8 DateTimeFormatter
我正在尝试解析从 Bitbucket event payload 收到的以下日期字符串: 2017-09-19T10:39:36+1000 当传入日期位于偏移量 +0000 中时,它可以工作,但 +1
我正在尝试从 Joda 迁移到 Java 8 的 ZonedDateTime,但我遇到了似乎无法解决的 DateTimeFormatterBuilder 问题。 我想接受以下任何一种格式: 2013-
我有以下格式化程序: DateTimeFormatter formatter = new DateTimeFormatterBuilder() .appendPattern("yyyy
我正在尝试使用 返回的 DateTimeFormatter 来解析表示具有 IsoField.QUARTER_OF_YEAR 的 LocalDate 值的文本DateTimeFormatterBuil
我目前有一个 Joda 日期解析器,它使用 DateTimeFormatterBuilder 以及我可能收到的六种不同日期格式。 我正在迁移到 Java 8 的 Date 例程,但没有看到等效的例程。
这个问题已经有答案了: Can’t rid of 'T' in LocalDateTime (3 个回答) 已关闭 3 年前。 我有这段代码可以将字符串双向解析为 LocalDateTime: pub
我是一名优秀的程序员,十分优秀!