设置宽大处理位:
public void setLenient(boolean lenient)
指定日期/时间解析是否宽松。通过宽松的解析,解析器可以使用启发式方法来解释不精确匹配该对象格式的输入。使用严格的解析,输入必须匹配这个对象的格式。
以下代码:
import java.text.ParseException;
import java.text.SimpleDateFormat;
public class Tester {
public static void main(String[] argv) {
java.util.Date date;
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
// Lenient
try {
date = sdf.parse("40/02/2013");
System.out.println("Lenient date is : "+date);
} catch (ParseException e) {
e.printStackTrace();
}
// Rigorous
sdf.setLenient(false);
try {
date = sdf.parse("40/02/2013");
System.out.println("Rigorous date (won't be printed!): "+date);
} catch (ParseException e) {
e.printStackTrace();
}
}
}
给出:
Lenient date is : Tue Mar 12 00:00:00 IST 2013
java.text.ParseException: Unparseable date: "40/02/2013"
at java.text.DateFormat.parse(DateFormat.java:357)
笔记
- 当对 Java 类有疑问时,阅读类文档应该是您的第一步。我不知道你的问题的答案,我只是用谷歌搜索了这个课程,点击了解析方法链接并注意到了See Also部分。您应该始终先搜索,并在问题中提及您的发现
- 宽大的日期在绕过审查和激发孩子的想象力方面有着令人尊敬的历史。