0
A
回答
1
基本上可以使用內部號碼的數據。 假設你在基於計值,那麼您可能想是這樣的:
NSNumber *sourceValue = ... // your NSNumber value from any source
int meters = sourceValue.intValue;
int km = floor(meters/1000); // only your kilometers
int sub_km = meters % 1000; // only the part behind the kilometers
int first_sub_km = floor(sum_km/100); // the first digit of the subrange
NSString *readable = [NSString stringWithFormat:@"%iK%i", km, first_sub_km];
首先,拆分米,進入< = 1000> 1000 那你只好把那出格式化,K之間。
2
int temp;
NSNumber *yourNumber;//the number you enter from some where
NSString *newValue;
if([yourNumber intValue]>1000){
temp = [yourNumber intValue] % 1000 ;//your number module 1000
newValue= [[temp stringValue]stringByAppendingString:@"K"];
}
注:我沒有我的Mac和我在一起,如果[temp stringValue]
提供任何worning &錯誤,請通知我
+0
這不是確切的答案,您應該添加其餘的您的號碼以相同的方式與字符串相關聯。 – 2012-02-10 14:05:17
0
自己寫的NSNumberFormatter的子類。在這個子類中你可以實現計算邏輯。
邏輯可能看起來像這樣。
- Devide由thousend值,並添加你的「K」
- ,如果你想有上百第一位獲得你的價值的thired最後一位數字
- 返回新的字符串
2
方法如下:
NSNumber *initialNumber = [NSNumber numberWithInt:35700];
NSString *resultString = [NSString stringWithFormat:@"%iK%i", floor(initialNumber/1000), floor((initialNumber % 1000)/100)];
相關問題
- 1. 十六進制爲NSNumber
- 2. 十進制值
- 3. 將十進制轉換爲十六進制和十六進制
- 4. 十六進制和十進制轉換
- 5. 十進制值/ SQL
- 6. 十六進制值
- 7. 雙十進制值
- 8. 從十進制值
- 9. 轉換十六進制,十進制,八進制和ASCII?
- 10. 十六進制爲二進制和十進制在matlab中
- 11. LINQ to SQL十進制值的總和
- 12. 的MySQL和PHP錯誤十進制值
- 13. C#XML序列化和十進制值
- 14. 確認十進制和整數的值
- 15. VBA隱藏十進制和十六進制的負數十進制數
- 16. Java - ByteBuffer和十進制和十六進制之間的轉換
- 17. 讀取mp3十進制值
- 18. 解釋十六進制值?
- 19. 存儲十六進制值
- 20. 從十六進制值
- 21. Xamarin.Forms.Color到十六進制值
- 22. 十六進制值在Android
- 23. 驗證十進制值
- 24. 插入十六進制值
- 25. JavaScript十進制值驗證
- 26. 允許十進制值Selection.Find.Font.Position
- 27. 含十進制值的SeekBar
- 28. 循環十進制值
- 29. 防止值十進制數
- 30. XML xs:int十六進制值
你在哪裏寫了你的例子中的任何「M」? – 2012-02-10 14:05:46
例如我有:1790M(米),我想將它轉換爲這樣的公里:1K7,另一個示例:34567M我想要:34K5謝謝 – samir 2012-02-10 14:09:18