我已经有一个函数来验证我的日期。问题是我没有2月30日的验证,例如。我认为也许有一种更简单的原生方式在Android上进行此验证。你能帮我吗?
我目前的验证功能是:
fun isDateOfBirthValid(date: String): Boolean {
if (date.length != 10) {
return false
}
val day = date.substring(0, 2).toIntOrNull()
val month = date.substring(3, 5).toIntOrNull()
val year = date.substring(6, 10).toIntOrNull()
if (day == null || month == null || year == null) {
return false
}
if (day < 1 || day > 31 || month < 1 || month > 12 || year < 1900) {
return false
}
val formatter = DateTimeFormatter.ofPattern("dd-MM-yyyy")
if (LocalDate.parse(date, formatter) > LocalDate.now()) {
return false
}
return true
}
字符串
2条答案
按热度按时间nqwrtyyt1#
只要尝试解析日期就足够了。如果它抛出一个异常,你知道它是不正确的。或者当分析的日期与输入不匹配时。比如说
字符串
tjvv9vkg2#
字符串
用法
型
希望这能有所帮助