【发布时间】:2019-04-02 12:51:03
【问题描述】:
我发现 [NSTextField integerValue] 对于包含千位分隔符的值的行为不同,具体取决于值的设置方式。
(我在德国,所以在这些示例中我的千位分隔符是一个点“.”)。
如果我调用
[myTextField setIntegerValue:4567],文本字段将包含 4.567(带有 tousands 分隔符),[myTextField integerValue]返回 4567。-
如果我在文本字段中手动键入值 4.567,或使用
[myTextField setStringValue:@"4.567"],则[myTextField integerValue]仅返回 4。
显然它会停止解析千位分隔符处的数字,即使它在调用 setIntegerValue 时自己插入了这样的分隔符。
所以我实际上有两个问题:
- 在使用
-setIntegerValue:时,是否有设置或其他简单的方法可以阻止它格式化数字? - 我可以在调用
-integerValue时“启用”数字解析以理解/接受千位分隔符吗?或者,如果没有,从 NSString 解析带有千位分隔符的数字的最简单方法是什么?
【问题讨论】:
标签: objective-c macos cocoa nstextfield