2011-07-14 44 views
5

我想找到一種方法來格式化的NSString這樣的:如何使用 t [tab]運算符在列中格式化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,沒有做的伎倆,因爲有些字左列較長,有些較短。我想知道是否有一個簡單的方法來做到這一點,我不知道。

+0

是否要在控制檯中打印字符串? – 2011-07-14 21:17:34

回答

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

順便說一句,這將是更有效地使用一個NSMutableStringserializedValue

+0

太棒了!謝謝!奇蹟般有效! –

+0

只需要'stringByAppendingFormat'改爲'stringByAppendingString' :) –

+0

stringByAppendingFormat:@「%@%@」,titleColumn,value] –