2 annbnncnnd AnnBnnCnnD 于 2013.04.08 13:37 提问

转换EditText到浮点型

如题,我试过这样:

EditText edt = (EditText) findViewById(R.id.price);
float number = Float.valueOf(edt.getText().toString());

但是应用在设备和模拟器上都不加载,返回的信息是:

"the application has stopped unexpectedly. please try again."

并且如果我删除了这一行:

float number = Float.valueOf(edt.getText().toString());

应用就能加载了。应该怎么办?

3个回答

wanglijuan428
wanglijuan428   2013.04.08 14:13
已采纳

你的转换应该是可以的,你需要对输入内容做一些限制,比如输入为""的时候会出现异常。

telencool
telencool   2013.04.09 15:38
EditText edt = (EditText) findViewById(R.id.price);
float number=   Float.parseFloat(edt.getText().toString());
suannai0314
suannai0314 帮你编辑了下代码格式,更多markdown使用见http://ask.csdn.net/pages/markdown
5 年多之前 回复
dongzibin
dongzibin   2013.04.09 13:08

是因为EditText的内容不合法导致的,应该先对EditText的内容做校验,比如可以用正则表达式判断是否是合法字符串。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
android中怎样将EditText的值转换成Double类型
EditText et = (EditText) findViewById(R.id.input_et_id); String str = et.getText().toString(); Double dou = Double.parseDouble(str);
Android开发 Edittext限制输入浮点数
如果我们开发中需要用到Edittext,并且需要要限制输入的内容。 这时候就需要Edittext的属性: android:numeric=”decimal|integer|signed” //限制输入为数字的类型 android:maxLength=”6” //限制输入的长度 可这些往往不能满足我们的需求我们的要求 所以我以输入的是浮点数并且要控制小数位只有1位的来作为实例。首先用ad
浮点型数据与字符串流的互转
1、浮点型====>字符串流,用sprintf。 #include char text[10]; float vf = 3.11232; char* p = &text; void main(void) {     sprintf(p,"%7.5f",vf);     printf(p);     printf("\n"); }    2、字符串流====>浮点
J2ME 浮点型与字节型之间的底层转换
浮点型与字节型之间的底层转换 用于J2ME中的浮点型与字节型的转换,非常方便,多用于脚本开发或读取
标准C函数的一些字符串与整型、浮点型的转换
atof(将字符串转换成浮点 型数) 相关函数 atoi,atol,strtod,strtol,strtoul 表头文件 #include 定义函数 double atof(const char *nptr); 函数说明 atof()会扫描参数nptr字符 串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符
浮点型变为整数类型
/** * 浮点型变为整数 * 1.直接截图整数部分 * 2.四舍五入后截取整数部分 * */ public static void main(String[] args) { double d = 3.64159; int i = (int)d; System.out.println(Integer.valueOf(i)); System.out.println(Integ
JavaScript类型转换 (整型---浮点型)
JavaScript类型转换 (整型---浮点型) JavaScript类型转换 (整型---浮点型) 1. 转换函数: js提供了parseInt()和parseFloat()两个转换函数。前者把值转换成整数,后者把值转换成浮点数。只有对String类型调用这些方法,这两个函数才能正确运行;对其他类型返回的都是NaN(Not a Number)。 在判断字符串是否是数字值前,
C语言使用技巧2:整型转浮点型
刚刚学到的技巧,将整型转换为浮点型,可以不使用联合体,写下来,以备需时使用。       char data[4];     float a=*(float *)data;     原创性文章,转载请注明出处 http://user.qzone.qq.com/2756567163。      CSDN:http://blog.csdn.net/qingwufeiyang12346
javaScript中字符串与整型,浮点型之间的转换
var a=3; var b='213'; a=parseInt(b); var c=0.5; var d='0.98'; d=parsetFloat(c); var e='ff'; var f=999; e=''+f; 参考url: http://www.internetke.com/m3_itm_mode1_139.html var a=3; var
三种进制及其转换、char、浮点型
1、三种进制及其转换 int i = 10000000000;//超出整型数域范围 NSLog(@"%d", i); i = 1000000000 * 10; int a = 1000000000; int b = 10; //... i = a * b; long j = 1