当前位置: 技术问答>java相关
如何检查Text中输入的是正确的日期,即数据的合法性检查?
来源: 互联网 发布时间:2015-02-06
本文导语: 在论坛里看了很多文章,感觉都对不上号? | 上面的方法是在客户端进行验证,用java的话应该就是在服务端进行验证了! 我用过oro的正则表达式的包(apache的网站上有): import org.apache.oro.t...
在论坛里看了很多文章,感觉都对不上号?
|
上面的方法是在客户端进行验证,用java的话应该就是在服务端进行验证了!
我用过oro的正则表达式的包(apache的网站上有):
import org.apache.oro.text.perl.*;
Perl5Util util=new Perl5Util();
String input;
String patten;
if(util.match("/patten/",input))
{
result="true";
}
那个正则匹配你自己添一下就行了!
我用过oro的正则表达式的包(apache的网站上有):
import org.apache.oro.text.perl.*;
Perl5Util util=new Perl5Util();
String input;
String patten;
if(util.match("/patten/",input))
{
result="true";
}
那个正则匹配你自己添一下就行了!
|
// Format the current time.
SimpleDateFormat formatter
= new SimpleDateFormat ("yyyy.MM.dd G 'at' hh:mm:ss a zzz");
Date currentTime_1 = new Date();
String dateString = formatter.format(currentTime_1);
// Parse the previous string back into a Date.
ParsePosition pos = new ParsePosition(0);
Date currentTime_2 = formatter.parse(dateString, pos);
不过这种好像不适用于你的这种情况,是将日期型数据转换成特定的格式输出,而不是检查Text中输入的是正确的日期
你应该用: redstarstar(红星星) 的方法试试或者你可以试试下面这段代码,意见而已不一定正确::
t3.addTextListener(new T1());//t3是textFiled类型
t3.addKeyListener(new T1K());、
string ts;
class T1 implements TextListener
{
public void textValueChanged(TextEvent e)
{
String ss=t3.getText();
if(ss.length()==8)
{
ts=t3.getText();
}
if(ss.length()>8)
{t3.setText(ts);}
}
}
class T1K extends KeyAdapter
{
public void keyTyped(KeyEvent e)
{
ts=t3.getText();
if((ts.length()==2)||(ts.length()==5))
{
t3.setText(ts+":");
t3.setCaretPosition(t3.getText().length());
}
if(ts.length()==8)
{
ts=t3.getText();
}
}
}
//记的把该textField按钮加入frame中或者applet中试试看
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
sdf.setLenient(false);
try
{
if(!sdf.format(sdf.parse(str)).equals(str))
{
System.out.println("不符合指定的日期格式!");
return;
}
}
catch(ParseException e)
{
System.out.println("不符合指定的日期格式!");
return;
}
System.out.println("日期格式正确!");
sdf.setLenient(false);
try
{
if(!sdf.format(sdf.parse(str)).equals(str))
{
System.out.println("不符合指定的日期格式!");
return;
}
}
catch(ParseException e)
{
System.out.println("不符合指定的日期格式!");
return;
}
System.out.println("日期格式正确!");