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