在nsnumber前加0

时间:2015-02-13 23:29:57

标签: objective-c nsnumber

我试图保存一个月,格式需要为2位数。问题是xcode每月将每月转换为1位数。如何格式化数字,例如01年1月?

修改以nsnumber格式保存。这是对条带的HTTP请求调用。在10月之前的所有月份,发送的日期从0X变为X.

编辑2 我还从条纹卡转换为nsnumber的位置收到以下警告

  

隐式转换失去整数精度:' NSUInteger' (又名' unsigned long')到' int'

编辑3 为了澄清,数字01一直变为1.我想将其保存为01.如何更改数字的格式?

1 个答案:

答案 0 :(得分:1)

您可以使用字符串格式或数字格式化程序。无论哪种方式,输出都将是一个字符串,因为你不能格式化它自己的数字。这是一个例子:

NSNumber *number = @(9);

// using a number formatter
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
[formatter setNumberStyle:NSNumberFormatterNoStyle];
[formatter setMinimumIntegerDigits:2];

NSString *numberString = [formatter stringFromNumber:number];
NSLog(@"%@",numberString);

// using string formatters
numberString = [NSString stringWithFormat:@"%02ld",(long)[number integerValue]];
NSLog(@"%@",numberString);