在处理货币时,我需要以Rs.1,500.00的格式更改JTextBox(比如txtRetilPrice)的值。现在进行操作,我需要将txtRetailPrice的值更改为1500.我尝试了此代码但无法成功。
if (!(txtRetailPrice.getText().equals(""))) {
txtRetailPrice.setText(txtRetailPrice.getText().replaceAll("Rs", ""));
txtRetailPrice.setText(txtRetailPrice.getText().replaceAll(".", ""));
txtRetailPrice.setText(txtRetailPrice.getText().replaceAll(",", ""));
}
实际上,在JTextBox的焦点上,我希望显示为1500并且在丢失的焦点上,它将变为Rs.1,500.00。失去焦点的工作已经完成,但为此我需要帮助。
答案 0 :(得分:0)
您可以使用NumberFormat
课程,使用India
作为国家/地区English
作为Locale
的语言来完成此操作。这是解析和格式化的简单示例。
static void IndiaCurrencyFormat() throws ParseException {
NumberFormat numberFormat = NumberFormat.getCurrencyInstance(new Locale("en", "in"));
int number = 15000;
System.out.println(numberFormat.format(number));
String currency = "Rs.15,000.00";
System.out.println(numberFormat.parse(currency));
}