Android中的时间格式的校验
public class MainActivity extends Activity implements OnClickListener{
private Button btn1;
private EditText edit;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
}
/**
* 组件初始化
*/
private void initView() {
btn1 = (Button) findViewById(R.id.btn1);
edit = (EditText) findViewById(R.id.edit);
btn1.setOnClickListener(this);
}
/**
* 判断字符串是否为日期格式
* @param date
* @return
*/
public boolean isDateStringValid(String date) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-DD");
// 输入对象不为空
try {
sdf.parse(date);
return true;
} catch (java.text.ParseException e) {
return false;
}
}
@Override
public void onClick(View v) {
switch(v.getId()){
case R.id.btn1:
String str = edit.getText().toString().trim();
if(isDateStringValid(str)){
if(str.length()==10){//日期格式必须为10位 例:2014-02-24
Toast.makeText(MainActivity.this, "是日期格式", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(MainActivity.this, "不是日期格式", Toast.LENGTH_SHORT).show();
}
} else {
Toast.makeText(MainActivity.this, "不是日期格式", Toast.LENGTH_SHORT).show();
}
break;
}
}
}