我有一个用于向用户显示内容的NSForm
。表单既可以通过应用程序连接到web托管的XML文件来更新,也可以由用户手动编辑。通过Interface Builder,我将每个表单值设置为通过NSNumberFormatter
格式化,以使数据的显示更易于阅读。NSNumberFormatter
只插入千位分隔符。
因为数据可以由用户手动编辑,所以我提取NSForm
字段中的stringValue
。我注意到,当我执行这个函数时,它还会捕获已注入字符串的逗号。我需要用这些值做一些数学计算,当试图调用NSString intValue
或NSString floatValue
时,它会导致问题。有人有什么想法吗?
我认为我可能必须"预解析"字符串,以删除逗号,然后将其转换为float
或int
值。
NSNumberFormatter
也可以反向工作:
NSNumber *n = [formatter numberFromString:@"123,456.78"];
float x = [n floatValue];