停止用户输入特殊字符

时间:2013-12-12 23:51:07

标签: java

我知道下面的代码会禁止用户输入数字,但我如何操纵它来禁止特殊字符,例如,./;'#[]-=<>?:@~{}_+

txtUserName.addKeyListener(new KeyAdapter() {
   public void keyTyped(KeyEvent e) {
      char c = e.getKeyChar();
      if (Character.isDigit(e.getKeyChar()))
            e.consume();
   }
});

2 个答案:

答案 0 :(得分:1)

以下是代码:

txtUserName.addKeyListener(new KeyAdapter() {
   public void keyTyped(KeyEvent e) {
      char c = e.getKeyChar();
      if (!Character.isLetterOrDigit(c))
            e.consume();
   }
});

只需使用其他功能。

答案 1 :(得分:0)

检查",./;'#[]-=<>?:@~{}_+".indexOf(c) != -1

请参阅String#indexOf(int)