2011-04-26 111 views
1

我正在嘗試用XCode編碼計算器,但後來我看到用逗號分隔的數字只是在逗號後切分。用逗號將數字轉換爲帶點的數字。 (Cocoa Touch)

我用這段代碼從textfield中取出數字。

-(IBAction)Additionbutton:(id)sender{ 

NSString *firstString = field1.text; 
NSString *secondString = field2.text; 
float num1; 
float num2; 
float output; 
num1 = [firstString floatValue]; 
num2 = [secondString floatValue]; 
output = num1 + num2 
Solutionfield.text = [ [NSString alloc] initWithFormat:@"%.2f",output] ; 

是否有可能設置計算這種方式,它能夠處理點和逗號或者我有他們,如果是這樣,我怎麼能做到這一點轉換?

謝謝:)

+0

Solutionfield.text = [[NSString alloc] initWithFormat:@「%f」,output];你以這種方式嘗試? – 2011-04-26 11:07:07

回答

0

我今天早上遇到了同樣的事情,下面的解決方案爲我工作:

NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init]; 
NSNumber *aNumber = [NSNumber numberWithFloat:[[yourFloatAsString stringByReplacingOccurrencesOfString:@"," withString:@"" ] floatValue]]; 
[numberFormatter setNumberStyle:kCFNumberFormatterDecimalStyle]; 
NSString *formattedNumber; 
formattedNumber = [numberFormatter stringFromNumber:aNumber]; 
NSLog(@"formattedNumber: %@", formattedNumber); 

顯然不是最有效的解決方案。它有效,但如果你有一段時間,我強烈建議你看看NSNumberFormatter Class Reference

相關問題