計算された値を取得してJformattedTextfieldに渡そうとすると、この問題が発生します。jformattedTextfield(、)が原因で、1,500.00をFloatで受け入れることができないことがわかっています。この問題を回避する方法はありますか?
private void SellButtonActionPerformed(java.awt.event.ActionEvent evt) {
float foreign , sellingRate, localAmount;
try{
DefaultTableModel dtm=(DefaultTableModel)p1.getModel();
int i = p1.getSelectedRow();
String s1=dtm.getValueAt(i,2).toString();
txt_rate.setText(s1);
}catch(Exception e){
JOptionPane.showMessageDialog(null, "Select Currency First");
}
foreign = Float.parseFloat(txt_select.getText());
sellingRate = Float.parseFloat(txt_rate.getText());
localAmount = foreign / sellingRate;
txt_amount.setValue(localAmount);
}
エラーメッセージ
Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: "1,500.00"
at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1241)
at java.lang.Float.parseFloat(Float.java:452)
{ 1,000 }未満の数値を計算できます
期待される結果