我想在字符串“96506550”上应用一个掩码,但我得到的结果是965065-50而不是96506-550。
//my method
public String format(String data, String mask) {
MaskFormatter mf = new MaskFormatter(mask);
return mf.valueToString(data);
}
System.out.println(formatter.format("96506550","#####-###"));
mf.setValueContainsLiteralCharacters(false);
。在我的情况下,我的掩码不仅包含破折号,还包含点。我不确定这是否是问题所在。除此之外,其余部分与此问题及其答案的解决方案相同。 - Guilherme Taffarel Bergamin