java.lang.IllegalArgumentException:格式无效:“2018-08-24T��:��:��”在“��:��:��”处格式错误
java.lang.IllegalArgumentException: Invalid format: "2018-08-24T��:��:��" is malformed at "��:��:��"
前端发送的日期格式无效,我收到此异常:
Caused by: java.lang.IllegalArgumentException: Invalid format:
"2018-08-24T��:��:��" is malformed at "��:��:��" at
org.joda.time.format.DateTimeParserBucket.doParseMillis(DateTimeParserBucket.java:187)
at
org.joda.time.format.DateTimeFormatter.parseMillis(DateTimeFormatter.java:826)
at
org.joda.time.convert.StringConverter.getInstantMillis(StringConverter.java:65)
at org.joda.time.base.BaseDateTime.(BaseDateTime.java:173)
at org.joda.time.DateTime.(DateTime.java:257)
基本上我想检查时间戳是否有任何格式错误的数据。如果是,我想将它设置为 0。例如日期时间是 2018-08-24T��:��:��
我想将它设置为 2018-08-24T00:00:00
你已经完成了一半。
try {
.. your code that parses the FED input
} catch ( IllegalArgumentException e) {
.. do further checking
意思是:当您收到来自您的来源的错误输入时,这个例外已经给了您一个例外。在这种情况下,您可以对传入的字符串进行简单的 substring() 或正则表达式检查。如果它是“4digits dash 2 digits dash 2 digits”...那么你得到了一个日期,并且可以手动创建一个相应的对象,并将时间值填写为全 0 例如。
前端发送的日期格式无效,我收到此异常:
Caused by: java.lang.IllegalArgumentException: Invalid format: "2018-08-24T��:��:��" is malformed at "��:��:��" at org.joda.time.format.DateTimeParserBucket.doParseMillis(DateTimeParserBucket.java:187) at org.joda.time.format.DateTimeFormatter.parseMillis(DateTimeFormatter.java:826) at org.joda.time.convert.StringConverter.getInstantMillis(StringConverter.java:65) at org.joda.time.base.BaseDateTime.(BaseDateTime.java:173) at org.joda.time.DateTime.(DateTime.java:257)
基本上我想检查时间戳是否有任何格式错误的数据。如果是,我想将它设置为 0。例如日期时间是 2018-08-24T��:��:��
我想将它设置为 2018-08-24T00:00:00
你已经完成了一半。
try {
.. your code that parses the FED input
} catch ( IllegalArgumentException e) {
.. do further checking
意思是:当您收到来自您的来源的错误输入时,这个例外已经给了您一个例外。在这种情况下,您可以对传入的字符串进行简单的 substring() 或正则表达式检查。如果它是“4digits dash 2 digits dash 2 digits”...那么你得到了一个日期,并且可以手动创建一个相应的对象,并将时间值填写为全 0 例如。