我正在尝试在iOS中编写转换器。
用户在文本字段中输入值,并转换值。
结果最终返回给用户。
输出必须采用区域设置十进制格式,才有效。
此外,输出必须以指数形式打印,这有效。
问题:我需要指数形式和小数形式。
以下代码解释了什么有效。
//formatting
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
[formatter setLocale:[NSLocale currentLocale]];
[formatter setNumberStyle: NSNumberFormatterDecimalStyle];
//formattiing
float myFloat=0.01;
NSNumber *myNumber =[[NSNumber alloc]initWithFloat:myFloat];
NSString *myString =[formatter stringFromNumber:myNumber];
NSLog(@"Locale: %@", formatter.locale.localeIdentifier);
NSLog(@"myFloat = %g", myFloat);
NSLog(@"myNumber = %.2e",[myNumber floatValue]);
NSLog(@"myString = %@", myString);
//output
Locale: nb_NO
myFloat = 0.01
myNumber = 1.00e-02
myString = 0,01
什么不起作用。我需要一个exponent和decimalformatter!
我想要这个输出:
myString = 1,00e-2
有人知道吗?
答案 0 :(得分:3)
请使用格式化程序:NSNumberFormatterScientificStyle