在java中屏蔽信用卡号的输入

时间:2012-01-30 08:54:52

标签: java input icefaces credit-card masking

我想屏蔽我的信用卡号输入表格,如下所示:

  

输入您的信用卡号码:411111 ****** 1111

所以像密码输入一样,但只是部分输入。

我正在使用icefaces来构建框架。如果我使用ace:maskedEntry,那么只更改数据的格式,而不是我必须输入的文本。

在此之前提前致谢并抱歉我的英语不好。

1 个答案:

答案 0 :(得分:0)

如果要屏蔽信用卡号,可以使用java子字符串方法。

public class MaskCard{

public static void main(String[] args) {
    String cardNum = "4111110065031111";
    final int STARTLENGTH = 6;   //first digit of card you don't want to mask
    final int ENDLENGTH = 4;    //last digit of card you don't want to mask
    int maskedLength = cardNum.length() - (STARTLENGTH + ENDLENGTH);
    System.out.println(maskedLength);
    StringBuilder sb = new StringBuilder();
    for (int i = 0; i < maskedLength; i++) {
        sb.append("*");
    }
    String maskedCard = cardNum.substring(0, STARTLENGTH) + sb + cardNum.substring(cardNum.length() - ENDLENGTH, cardNum.length());
    System.out.println(maskedCard);
}

}