gpt4 book ai didi

cocoa - 将 NSNumberFormatter 的负数格式从 (xxx.xx) 更改为 -xxx.xx

转载 作者:行者123 更新时间:2023-12-03 16:05:48 26 4
gpt4 key购买 nike

我想将我的 NSNumberformatter 从显示带有括号的负数更改为将减号放在前面(或任何本地化标准)。

我假设我可以使用 setNegativeFormat 来做到这一点:

但是读了 Apple 哦,如此详尽的文档,我还是摸不着头脑:

<小时/>

setNegativeFormat:

设置接收器用于显示负值的格式。

- (void)setNegativeFormat:(NSString *)aFormat

参数格式指定负值格式的字符串。

可用性适用于 iPhone OS 2.0 及更高版本。

另请参阅– 负格式

声明于NSNumberFormatter.h

<小时/>

aFormat 有哪些选项?!?来吧,文档作家,这里的链接会杀死你吗?

编辑:这里是声明的值(value):

NSNumberFormatter *currencyFormatter = [[NSNumberFormatter alloc] init];
[currencyFormatter setNumberStyle:NSNumberFormatterCurrencyStyle];

保留本地化的货币符号和小数位(无论它们是什么)对我来说很重要。因此 [currencyFormatter setNegativeFormat:@"-#,##0.00"] 可能无法工作,因为缺少货币并且不能为所有货币假设 2 位小数。

最佳答案

如果您查看 Data Formatting Programming Guide For Cocoa 中的“格式字符串”部分:

The format string uses the format patterns from the Unicode Technical Standard #35 (this reference is to version tr35-6; formatters for Mac OS X v10.4 use version tr35-4).

编辑:

如果要设置基于货币的格式字符串,可以使用¤字符,例如:

[formatter setFormat:@"¤#,##0.00"];

这将添加当前本地化的货币符号来代替 ¤ 字符。

因此,将相同的概念应用于负格式字符串:

[formatter setFormat:@"-¤#,##0.00"];

这还将应用货币符号来代替当前本地化的 ¤

关于cocoa - 将 NSNumberFormatter 的负数格式从 (xxx.xx) 更改为 -xxx.xx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1011183/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com