2016-07-06 72 views
2

我想將100我使用下面的代碼後創建NSDecimalNumber獲取NSDecimalNumber:有2位小數

NSDecimalNumber *amountToSendNumber = [number decimalNumberByDividingBy:[NSDecimalNumber decimalNumberWithString:@"100"]]; 

它給了我正確的值,如果我提供輸入作爲2536爲25.36。 但是,如果我提供輸入爲2500,那麼輸出是25. 我希望輸出爲25.00而沒有任何舍入機制。

任何幫助?

+0

你的問題聽起來數量有關的陳述(在標籤,例如),但我沒有看到任何演示代碼。請澄清。 – Droppy

+0

檢查NSString * formattedNumber = [NSString stringWithFormat:@「%。02f」,myFloat]; –

+0

我想使用NSDecimalNumber而不是float,因爲還有其他操作要執行。 – iAsh

回答

3

您需要使用NSNumberFormatter,而你顯示NSDecimalNumber

NSNumberFormatter *formatter = [NSNumberFormatter new]; 
    [formatter setMinimumFractionDigits:2]; 
    NSLocale *usLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]; 
    [formatter setLocale:usLocale]; 
    NSLog(@"%@", [formatter stringFromNumber:amountToSendNumber]); 
+0

謝謝.. :)它完美的工作! – iAsh

+0

排序和甜蜜的答案+爲你的 –

+0

這是給我25,00而不是25.00。你可以幫我嗎? – iAsh