无法将字符串值转换为浮点数
问题描述:
当我将字符串值转换为浮点数时,需要o.oooo。这里是代码。无法将字符串值转换为浮点数
NSString *amt=txtTotalBill.text;
NSLog(@"%@",amt);
float amount = [amt floatValue]
NSLog(@"%f",amount);
NSString *insertData=[NSString stringWithFormat:@"insert into tbl_Bills(Amount,Note,Due_On) values ('%f')",amount];
[database executeQuery:insertData];
NSLog(@"inert query: %@",insertData);
NSLog(@"value inserted");
[table reloadData];
[database close];
每次它需要金额为0.0000。在此代码amt值是正确的,但该字符串值不转换为浮动。
答
只是尝试了一些你的代码块的和它的作品出来对我很好。该错误可能在NSString本身。也许它没有通过一个完全数字的数字。尽量使用CGFloat,尽管这不应该改变任何东西。
答
我假设你有alreayd确保没有非数字字符可以进入要转换的NSString。
你可以让我们知道你为NSLog得到的输出是什么字符串?
你还可以尝试设置float的输出格式吗?例如'%3.3f'将在小数点前后各显示3个数字。
答
试试这个,我认为这会奏效。
float amount = [txtTotalBill.text floatValue];
答
如果文本是浮点数格式,请检查txtTotalBill.text。
如果文本没有浮点数格式,[的NSString的floatValue] retuns 0.00000
答
这完美的作品
NSString *amt = txtTotalBill.text;
float amount;
amount = [amt floatValue];
什么的'的NSLog打印出来(@ “%@”,AMT);'行? –
我试过你的代码,它在我的最后工作正常..你可以解释更多,并把一些值,以显示你从文本文件的文本首先得到什么。 – Sabby