当str = 20111212aaaaaaaaaaa时,SimpleDateFormat parse(string str)不会引发异常?

当str = 20111212aaaaaaaaaaa时,SimpleDateFormat parse(string str)不会引发异常?,第1张

当str = 2011/12 / 12aaaaaaaaaaa时,SimpleDateFormat parse(string str)不会引发异常?

JavaDoc on

parse(...)
指出以下内容:

解析不一定使用所有字符,直到字符串末尾

似乎无法

SimpleDateFormat
抛出异常,但是可以执行以下 *** 作:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/d");sdf.setLenient(false);ParsePosition p = new ParsePosition( 0 );String t1 = "2011/12/12aaa";    System.out.println(sdf.parse(t1,p));if(p.getIndex() < t1.length()) {  throw new ParseException( t1, p.getIndex() );}

基本上,您检查解析是否消耗了整个字符串,如果不是,则输入无效。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5477958.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存