Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/94.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
本地化浮点并指定iOS中的小数位数_Ios_Cocoa Touch_Floating Point_Nsstring_Nslocalizedstring - Fatal编程技术网

本地化浮点并指定iOS中的小数位数

本地化浮点并指定iOS中的小数位数,ios,cocoa-touch,floating-point,nsstring,nslocalizedstring,Ios,Cocoa Touch,Floating Point,Nsstring,Nslocalizedstring,我有一个浮点数,我想显示到小数点后一位。例如104.8135674。。。以英语显示为104.8。通常我会使用: myString=[nsstringwithformat:@“%.1f”,myFloat] 但是,我想将号码本地化,因此我尝试: myString=[NSString localizedStringWithFormat:@“%.1f”,myFloat] 这用于指定正确的十进制符号(例如 中文:104.8 德语:104,8 但是,对于使用NOT NOT use(0123456789)的语

我有一个浮点数,我想显示到小数点后一位。例如104.8135674。。。以英语显示为104.8。通常我会使用:

myString=[nsstringwithformat:@“%.1f”,myFloat]

但是,我想将号码本地化,因此我尝试:

myString=[NSString localizedStringWithFormat:@“%.1f”,myFloat]

这用于指定正确的十进制符号(例如

中文:104.8

德语:104,8

但是,对于使用NOT NOT use(0123456789)的语言,将使用正确的十进制符号,但数字仍然是阿拉伯数字

巴林阿拉伯语:104,8(数字应使用不同的符号)

所以我试着:

myString=[NSNumberFormatter localizedStringFromNumber:[NSNumber numberWithFloat:myFloat]numberStyle:KCFNumberFormatter DecimalStyle];

但是有了它,我似乎无法指定小数位数


中文:104.813

NSNumberFormatter
-setMaximumFractionDigits:
用于此目的,您可以重新使用格式设置程序,这非常好:

NSNumberFormatter * formatter =  [[NSNumberFormatter alloc] init];
[formatter setNumberStyle:kCFNumberFormatterDecimalStyle];
[formatter setMaximumFractionDigits:1];
[formatter setLocale:[NSLocale currentLocale]];
NSString * myString = [formatter stringFromNumber:[NSNumber numberWithFloat:123.456]];

就是这样,我也沿着那条赛道开始了,但在途中的某个地方丢了。谢谢你帮我澄清。