我正在创建一个应用程序,用户在日历中选择一个日期和时间,然后应该在文本字段中显示为 26 位数字,用尾随零填充日期。
所以日期应该以如下格式显示:
yyyyMMddHHmmssSSS000000000
所以在毫秒(SSS)之后,我想用 9 个零填充字符串。问题是,如果不在模式字母和零常数之间添加空格,这似乎是不可能的。
有趣的是,如果我这样做,DateTimeFormatter.ofPattern("yyyyMMddHHmmssSSS000000000")
我会得到一个 DateTimeParseException
,但字符串实际上是在文本字段中根据需要格式化的。问题是,当DateTimeFormatter
使用 try-catch 块进行实例化时,Eclipse 会告诉我 Unreachable catch block for DateTimeParseException. This exception is never thrown from the try statement body
,因为异常是在我的文本字段的某个依赖类中引发的。此外,捕获每次执行代码时都会抛出的错误似乎是一种不好的做法。
DateTimeFormatter.ofPattern("yyyyMMddHHmmssSSS 000000000")
编译。但我真的需要它是一个没有任何空格的字符串。
这可能吗?我目前正在使用java.time.format.DateTimeFormatter
,但如果有一些类在那里扩展它,我想使用它也可以。虽然我更愿意避免添加额外的依赖项。