Buenas compañeros, estoy intentando realizar una función para poder transformar datos recogidos, como por ejemplo: 2.1 en 2,1
String DNI = txtDNI.getText();
String Descuento = txtDto.getText();
String valor[] = new String[3];
for (int fila = 0; fila < tbl.getRowCount(); fila++) {
for (int columnas = 0; columnas < tbl.getColumnCount(); columnas++) {
// Introduzco los valores recogidos en el vector
valor[columnas] = tbl.getValueAt(fila, columnas).toString();
}
// Formateamos el valor, en vez punto (.) hay comas (,)
DecimalFormatSymbols otherSymbols = new DecimalFormatSymbols(getLocale());
otherSymbols.setDecimalSeparator(',');
DecimalFormat df = new DecimalFormat("###,###.##", otherSymbols);
String format = df.format(valor[2]);
String format2 = df.format(Descuento);
System.out.println("Valor sin formatear");
System.out.println("Cantidad: " + valor[0] + "' || '" + "Descripcion: " + valor[1] + "' || '"
+ "Precio: " + valor[2] + "' || '" + " Descuento: " + Descuento);
System.out.println("-------------------------------------");
System.out.println("Valor formateado");
System.out.println("Cantidad: " + valor[0] + "' || '" + "Descripcion: " + valor[1] + "' || '"
+ "Precio: " + format + "' || '" + "" + " Descuento: " + format2);
// objConex.AñadirVenta(valor, formateador.format(ValorComa),
}
txtDNI.setText("");
txtNombre.setText("");
Se supone según la API que funciona así...String format = df.format(valor[2]); pero donde pone "valor[2]" que es donde recojo el valor de la columna "Precio" en mi jtable (esto funciona perfectamente). Mas luego, intento, recogiendo el valor del txtDto (Descuento), donde obtengo 5, que lo quiero como 5.0 porque el descuento puede no ser un número entero, y aquí, como también lo tengo que registrar en la BD, me pide que lo ponga como 5,0.
¿Que se os ocurre? Gracias :)