Ответ 1
String s = e1.getText().toString();
Float f= Float.parseFloat(s);
Возможный дубликат:
Строка из EditText для плавания
В приложении я хочу преобразовать введенную строку в поле редактирования в соответствующее значение, например 233243664376347845.89
, в соответствующее значение float. Но он возвращается как IE10 после некоторого числа, например 23324366IE10
Пожалуйста, помогите мне. Мой код -
NumberFormat format = NumberFormat.getInstance(Locale.US);
try
{
number = format.parse(e1.getText().toString());
} catch (ParseException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
Длина текста редактирования больше 20 цифр, также я хочу минус два значения текстового значения плавания...
String s = e1.getText().toString();
Float f= Float.parseFloat(s);
Это решит вашу проблему:
String str=e1.getText().toString();
number = Float.parseFloat(str);
Попробуйте это.
EditText edt = (EditText) findViewById(R.id.edit_float);
float number = Float.valueOf(edt.getText().toString());
Вы используете метод valueOf(), если класс оболочки Float преобразует строку в float. В этом примере я получаю объект Editable этого EditText с getText(), на который я вызываю метод toString(), чтобы получить из него строку.