5

我想找到一种像这样格式化 NSString 的方法:

Name:               John
Location:           Unknown
Type:               Unknown
Status:             Unknown

现在我正在使用此代码来执行此操作,但结果却大不相同:

编码:

serializedValue = [serializedValue stringByAppendingFormat:@"%@:\t\t%@\n",title, value];

title左列在哪里value,第二列在哪里。

结果:

Name:       John
Location:       Unknown
Type:       Unknown
Status:     Unknown

现在,如您所见,始终添加恒定数量的制表符 (\t),在我的情况下为 2,并不能解决问题,因为左列中的某些单词较长而有些较短。我想知道是否有一种我不知道的简单方法可以做到这一点。

4

1 回答 1

10
NSString *titleColumn = [[NSString stringWithFormat:@"%@:", title] stringByPaddingToLength:20 withString:@" " startingAtIndex:0];
serializedValue = [serializedValue stringByAppendingFormat:@"%@%@", titleColumn, value];

NSMutableString顺便说一句,使用for会更有效serializedValue

于 2011-07-14T21:17:57.100 回答