NSString格式

Nit*_*ish 6 iphone objective-c nsstring

我有一个NSString从阵列中得到的东西.数组中有多个字符串对象.我想更改从数组中获取的字符串的格式并显示新的格式化字符串UILabel.让我举个例子:

数组中的字符串:539000
我想显示的字符串:5.390.00

现在的问题是,我从阵列获取字符串可能是539000,142009050.所以我想要得到的字符串是:5.390.00,142.00,90.50.

正确的格式是放置**.**前两位数字,再次放置一个**.**前3位数字**.**.

Nar*_*ana 16

尝试以下代码,它会有所帮助

Objective-C的

NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init]; 
[formatter setGroupingSeparator:@"."];
[formatter setGroupingSize:2];
[formatter setUsesGroupingSeparator:YES];
[formatter setSecondaryGroupingSize:3];

NSString *input = @"539000";
NSString *output = [formatter stringFromNumber:[NSNumber numberWithDouble:[input doubleValue]]];
NSLog(@"output :: %@",output);// output :: 5.390.00 
Run Code Online (Sandbox Code Playgroud)

Swift3

let formatter = NumberFormatter()
    formatter.groupingSeparator = "."
    formatter.groupingSize = 2
    formatter.usesGroupingSeparator = true
    formatter.secondaryGroupingSize = 3

    let input = 539000
    let output = formatter.string(from: NSNumber.init(value: input))
    print("output :: \(output!)")// output :: 5.390.00 
Run Code Online (Sandbox Code Playgroud)