0

我正在尝试计算NSString从十进制数字格式化的字符数,并进行本地化。

使用下面的代码,我在英国本地化中正确获得了长度。但是如果我尝试使用法语区域格式,它会搞砸,其中千位分隔符是一个空格,小数点是一个逗号。

任何人都可以就正确的方法提出建议吗?

这是应该给我字符数的位:

-(NSString*)setFormatLength:(double)result;
{
    NSNumber* aNumber = [NSNumber numberWithDouble:result ];
    NSString* lengthcalc =[unformatter stringFromNumber: aNumber] ;
    int lnth = lengthcalc.length;
    NSLog(@" length %d",lnth);

    if(lnth == 15)
    {
      //do something
    }
    else
    {
    // do something else
    }

    return displayresult;

这是解格式化程序:

unformatter = [[NSNumberFormatter alloc] init];
[unformatter setFormatterBehavior:NSNumberFormatterBehaviorDefault];
[unformatter setLocale:[NSLocale currentLocale]];
[unformatter setNumberStyle: NSNumberFormatterDecimalStyle];
[unformatter setAlwaysShowsDecimalSeparator:NO];
4

0 回答 0