我想格式化一个看起来像这样的字符串:
0.0580 which means 5.8 ct
0.1580 which means 15.8 ct
1.1580 which means 1.15 €
因此字符串可以是x.xxxx
格式的任何内容。现在我开始构建它,但我是objective-c和iOS的新手。
首先,我想删除最后一个字符,因为最后一个字符并不重要,我不想对数字进行舍入。
NSString *responseString = [responseData
substringWithRange:NSMakeRange(1,
[responseData length]-2)];
到目前为止,这给了我x.xxx。知道如何继续以及使用什么代码?那有没有图书馆?
答案 0 :(得分:3)
看一下NSNumberFormatter类。它应该做你需要的。像这样:
NSNumberFormatter *numFormatter = [[NSNumberFormatter alloc] init];
NSNumber *myNumber = [NSNumber numberWithDouble:[@"0.158" doubleValue]];
[numFormatter setNumberStyle:NSNumberFormatterCurrencyStyle];
NSString *formattedValue = [numFormatter stringFromNumber:myNumber];
[numFormatter release];
另请查看NSNumberFormatterStyle和NSNumberFormatterBehavior以控制格式。
答案 1 :(得分:1)
在x.xxx
表格中输入您的号码后,您可以执行以下操作:
float floatValue = [@"0.158" floatValue]; // Get your string as a number.
floatValue *= 100; // Turn '0.158' into '1.58'
这是否回答了你的问题?我不太确定它确实存在,所以请更新你的问题,我会尽力帮助你。