- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用多个语言环境编号。示例:
我的代码将小数点分隔符后的最后一位向上舍入:
NSNumberFormatter *formatter = [[[NSNumberFormatter alloc] init] autorelease];
[formatter setNumberStyle:NSNumberFormatterDecimalStyle];
[formatter setLocale:[NSLocale currentLocale]];
[formatter setMinimumFractionDigits:2];
[formatter setMaximumFractionDigits:2];
double myValue = [[formatter numberFromString:@"123.458"] doubleValue];
double myValue2 = [[formatter numberFromString:@"123.444"] doubleValue];
NSString *rezult = [formatter stringFromNumber:[NSNumber numberWithDouble:myValue]];
NSString *rezult2 = [formatter stringFromNumber:[NSNumber numberWithDouble:myValue2]];
NSLog(@"rezult = %@", rezult); //gives 123.46 - incorrect
NSLog(@"rezult2 = %@", rezult2);//gives 123.44 - correct
请建议如何防止舍入。
请记住,我不能这样做:
double aDouble = 1234.56789;
NSString *stri = [NSString stringWithFormat:@"%.2f", aDouble];
NSLog(@"%@", stri); //result is 1234.56 - correct (not rounded up to 1234.57)
...因为我必须使用 *formatter 设置 *stri(见上文)。
我想 NSNumberFormatter
一定有一些额外的设置,不是吗?
提前致谢。
编辑 1
解决方案:在声明 NSNumberFormatter 之后,再说:
[formatter setRoundingMode: NSNumberFormatterRoundDown];
感谢@Price 提供的快速解决方案。主题关闭。
最佳答案
你可以添加这个:
[formatter setRoundingMode: NSNumberFormatterRoundDown];
关于iphone - 在 NSNumberFormatter 中禁用四舍五入(使用语言环境),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11954324/
这个问题在这里已经有了答案: Inappropriate Expected declaration error (1 个回答) 关闭 7 年前。 我正在阅读我的 swift 书并边做边建。我在使用这
这是我的代码片段,我不知道如何舍入双数。 double m = [tmpProduct.msrp doubleValue] ; double d = [tmpProduct.discountPric
它看起来像是NSNumberFormatter 的 方法,用于设置自定义格式化程序。 setFormat: 在 iPhone 上不可用... 所以这......使我的应用程序崩溃: NSNumberF
我在 NSTableView 的单元格中使用了 NSNUmberFormatter。这个 NSNUmberFormatter 是从 IB 库中拖出来并放入 TableView 单元格中的。然后从检查器
我对 NSNumberFormatter 的使用感到完全困惑。这应该非常简单,但我无法让它工作。 我想设置一个 NSTextField 以允许输入带小数点或不带小数点的十进制数字。这是我认为可行的:
我想将 NSDecimalNumber 格式化为美元值(1.50 美元),但我遇到了崩溃。 这是我的方法: +(NSString*) formatPriceForUser:(NSDecimalNumb
以下代码无法正常工作: //[formatter setNumberStyle:NSNumberFormatterDecimalStyle]; formatter.maximumFractionDig
我正在开发一个适用于 double 的计算器应用程序,然后当您按下等于时,操作是使用 double 完成的,然后切换到 NSNumberFormatter。我的问题是当用户想要在屏幕上的答案中添加(或
有人问过类似的问题,但我发现提供的解决方案不适用于最新的 iOS SDK,或者不完全适用于这种特殊情况。 我使用 NSNotification 调用一个方法,该方法在 UILabel 中使用分组符号格
我的应用程序中有一个价格字段。我使用了 NSNumberFormatter 并且我正在使用核心数据存储和检索值。它在模拟器上运行良好,但设备上没有显示任何内容。 我还显示了在模拟器上运行正常但在设备上
我的问题是我目前使用的是 NSNumberFormatter 和 NSNumberFormatterDecimalStyle。我使用它是因为我想让逗号将每三个数字的数字隔开,就像当我把它变成一个字符串
我将收到美国 5.00 美元、日本 5.00 日元、欧洲 5.00 欧元等。但我不想要那样。我想在每个地区都获得相同的东西:美国 5.00 美元,日本 5.00 美元,欧洲 5.00 美元。这是我尝试
我有一个字符串,其货币格式为本地货币。例如10000 丹麦克朗 将 (10.000,00)当转换为双倍值时,它只读为 10。我试过这个片段 NSString * locale ; if(loc
我的代码是: NSString *price = @"0.29000"; NSNumberFormatter *f = [[NSNumberFormatter alloc] init]; [f set
我正在制作一个包含多个文本字段的应用程序。我希望当用户在文本字段中输入数字时,编辑结束时自动添加百分比符号。现在,我知道如何做到这一点的唯一方法是将文本值转换为 float ,然后使用 NSNumbe
我已经设置了一个 NSNumberFormatter 如下: formatter = [[NSNumberFormatter alloc] init]; [formatter setNumberSty
我需要格式化数字和货币符号,我使用以下代码。我面临的问题是该数字四舍五入为 34.80,这仅适用于某些货币,如果我在下面的代码中将货币代码更改为“INR”,结果显示的金额没有四舍五入。 NSDecim
处理整数、NSString 和 NSNumberFormatter 的最佳方法是什么? 我有一个带有 UITextField 的应用程序,用户可以在其中输入数字。通过 UITextField 中的每一
我正在尝试获取 NSNumberFormatter 来显示货币。我有两个 UILabels,两者都由相同的 NSNumberFormatter 格式化,但第一个被括号包围。这是我的代码: NS
我有一个奇怪的问题。它似乎只出现在测试者的 iPhone 5s 上。它可以在运行最新 iOS (8.3) 的 iPhone 5、6 和 6 plus 上正常运行。 这是代码 -(NSString *)
我是一名优秀的程序员,十分优秀!