【问题标题】:NSNumberFormatter interfering with NSString intValueNSNumberFormatter 干扰 NSString intValue
【发布时间】:2013-05-22 21:44:21
【问题描述】:

我有一个NSForm 用于向用户显示内容。表单可以通过应用程序通过连接到 Web 托管的 XML 文件进行更新,也可以由用户手动编辑。通过 Interface Builder,我将每个表单值设置为通过 NSNumberFormatter 格式化,以使数据的显示更易于阅读。 NSNumberFormatter 仅插入千位分隔符。

因为数据可以由用户手动编辑,所以我提取NSForm字段的stringValue。我注意到,当我执行此功能时,它还会抓取已注入字符串的逗号。我需要对这些值进行一些数学运算,并且在尝试调用NSString intValueNSString floatValue 时会导致问题。有人有什么想法吗?

我在想我可能必须先“预解析”字符串以删除逗号,然后再将其转换为 floatint 值。

【问题讨论】:

    标签: objective-c macos cocoa nsstring nsnumberformatter


    【解决方案1】:

    NSNumberFormatter 也可以反向工作:

    NSNumber *n = [formatter numberFromString:@"123,456.78"];
    float x = [n floatValue];
    

    【讨论】:

    • 感谢您的提示。在处理完代码后,我能够让它工作。
    猜你喜欢
    • 2012-06-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-09
    • 2012-07-17
    • 2019-06-17
    • 2015-02-12
    • 2011-04-02
    • 2020-04-01
    相关资源
    最近更新 更多