将浮点数格式化为填充前导空格

时间:2013-02-15 17:29:06

标签: objective-c cocoa-touch nsstring number-formatting

我可以使用前导零获得我想要的结果,但它不适用于空格。

[NSString stringWithFormat:@"%05.2f", 2.1]; // 02.10

但是,以下情况不起作用:

[NSString stringWithFormat:@"% 5.2f", 2.1]; // 2.10

这也不是:

[NSString stringWithFormat:@"%5.2f", 2.1]; // 2.10

2 个答案:

答案 0 :(得分:4)

我只是尝试了这个并且它很有用:

printf("%s\n", [[ NSString stringWithFormat:@"% 5.2f\n", 2.1 ] UTF8String ] ) ;

给出了

 2.10

这是正确的......也许问题出在其他地方?

修改

如果您不使用固定宽度字体,则可以使用\t

插入制表符

答案 1 :(得分:1)

我认为我的原始解决方案与@ColWhi和@nielsbot所建议的一样......我认为问题是字体(Helvetica)的空格比字符更窄......