填充NSString不起作用

我已经读过要左键填充NSString你需要做的就是:

 NSString *paddedStr = [NSString stringWithFormat:@"%-20.20@ %-20.20@", aString, anotherSting]; 

但是,这不起作用!! 我不知道为什么。 我尝试了很多组合而没有成功。 例子:

 NSString *paddedStr = [NSString stringWithFormat:@"%-20s@", " ", myString]; 

但那种方式很丑陋……丑陋。 它只是在字符串(myString)之前追加20次char(“”),这不是我们需要的吗?

目标是将NSString格式化为呈现两列或更多列,每列20个字符,无论行内字符串的长度如何。

示例目标输出:

 Day Hour Name Age 

有人知道怎么做吗?

我正在使用ARC和iOS 5。

实际上,格式化的字符串将使用NSFileHandle写入文件。

感谢大家!

编辑:

我注意到这有效:

 NSString *str = [NSString stringWithFormat:@"%-10.10s %-10.10s", [strOne UTF8String], [strTwo UTF8String]]; 

但是……我们也不想要C风格的字符串。

这是一种方法:

 NSString *paddedStr = [NSString stringWithFormat:@"%@%@", [@"day" stringByPaddingToLength:20 withString:@" " startingAtIndex:0], [@"Hour" stringByPaddingToLength:20 withString:@" " startingAtIndex:0]];