public static LocalDate parseDateString(String date) {
DateTimeFormatter optionalFullYearParser = java.time.format.DateTimeFormatter.ofPattern("[dd-MM-yy][dd-MM-yyyy]");
DateTimeFormatter parser = new DateTimeFormatterBuilder()
.appendOptional(optionalFullYearParser)
.appendValueReduced(ChronoField.YEAR, 2, 4, 1900)
.toFormatter(new Locale ("nl","NL"));
return java.time.LocalDate.parse(date,parser);
}
System.out.println(parseDateString("11-10-56").toString());
System.out.println(parseDateString("11-10-1956").toString());
System.out.println(parseDateString("08-05-51").toString());
不需要2个格式化程序对象来完成此操作,并且在使用AppendValuerEduced
添加年份部分时,不应该在模式文本中包含年份部分。
public static LocalDate parseDateString(String date) {
DateTimeFormatter parser = new DateTimeFormatterBuilder()
.appendPattern("dd-MM-")
.appendValueReduced(ChronoField.YEAR, 2, 4, 1900)
.toFormatter(Locale.forLanguageTag("nl-NL"));
return java.time.LocalDate.parse(date, parser);
}
测试
System.out.println(parseDateString("11-10-56").toString());
System.out.println(parseDateString("11-10-1956").toString());
System.out.println(parseDateString("08-05-51").toString());
输出
1956-10-11
1956-10-11
1951-05-08
我有一个文件,可以有日期修改值与日期或日期时间的格式。我曾将该值解析为: 现在,字符串也可以是
问题内容: 我正在使用Joda解析日期,并且具有不使用前导零的格式,例如: 请注意,dayOfMonth字段用空白填充左。 目前,我似乎不得不使用两种不同的格式,如果其中一种失败,则需要重新解析 是否有可以同时处理两种情况的单一格式(或API开关)?(SimpleDateFormat的答案是否相同-我不使用?) 问题答案: 我刚刚创建了一个快速程序来检查这一点- 输出是- 因此,即使source2
如何将字符串日期格式转换为日期,我有格式为以下格式的日期字符串: 接下来,我尝试了,但没有运气。 所有上述语句都存在解析错误。
我装了这个 测试并返回true: 我发现SimpleDateFormat将日期转换为2021的3月1日,尽管2021的2月不是29日。如果我在2021-02-30中通过,这是无效的,但它返回正确的结果。
问题内容: 我有一个系统(用Python开发),它接受 datetime作为各种格式的字符串 ,我必须 解析 它们。当前datetime字符串格式是: 现在我想要一个可以在适当的datetime对象中转换任何这些datetime格式的 通用解析器… 否则,我必须单独分析它们。因此,还请提供单独解析它们的方法(如果没有通用解析器)。 问题答案: 正如@TimPietzcker所建议的那样,dateu
这是我的用户类,我要在我的数据库中保存符合ISO的日期时间。 这是我的球衣控制器: 我如何使用像泽西岛这样的日期时间格式?是否可以发送一个datatime并自动创建Java8日期时间对象?