iOS中數字的格式化

2021-06-18 13:21:09 字數 1338 閱讀 2630

在ios中我們可以通過nsdateformatter來設定輸出nsdate的格式。相比nsdateformatter的大名鼎鼎,nsnumberformatter好像知道的人就不多了。其實通過nsnumberformatter,同樣可以設定nsnumber輸出的格式。例如如下**:

nsnumberformatter

*formatter =[[

nsnumberformatter

alloc

]init

];formatter

.numberstyle

=nsnumberformatterdecimalstyle

;nsstring

*string=[

formatter stringfromnumber

:[nsnumber

numberwithint

:123456789

]];nslog

(@"formatted number string:%@"

,string

);

輸出結果為:[1223:403] formatted number string:123,456,789

其中nsnumberformatter類有個屬性numberstyle,它是乙個列舉型,設定不同的值可以輸出不同的數字格式。該列舉包括:

enum

;typedef

nsuinteger

nsnumberformatterstyle

;

各個列舉對應輸出數字格式的效果如下:

[1243:403] formatted number string:123456789

[1243:403] formatted number string:123,456,789

[1243:403] formatted number string:123,456,789.00

[1243:403] formatted number string:-539,222,988%

[1243:403] formatted number string:1.23456789e8

[1243:403] formatted number string:一億二千三百四十五萬六千七百八十九

其中第三項和最後一項的輸出會根據系統設定的語言區域的不同而不同。

iOS中數字的格式化

在ios中我們可以通過nsdateformatter來設定輸出nsdate的格式。相比nsdateformatter的大名鼎鼎,nsnumberformatter好像知道的人就不多了。其實通過nsnumberformatter,同樣可以設定nsnumber輸出的格式。例如如下 nsnumberfor...

iOS 數字的格式化(NSNumber格式化)

在開發的過程中,我們會遇到這樣的問題,在金額沒三位中間會加乙個逗號的那種格式。例如 123456變成123,456的情況。數字的格式化的 nsstring numstring nsstring stringwithformat 12345678.89 nsnumberformatter format...

頁面中數字格式化和時間格式化

var clearnonum function obj g,只保留第乙個.清除多餘的 必須保證第乙個為數字而不是.obj.value obj.value.replace g,obj.value obj.value.replace replace g,replace obj.value obj.val...