2012-03-06 106 views
3
char arr[] = "abcdefg"; 
// I know I can do this 
NSString *s = [[NSString alloc] initWithCString:arr encoding:NSUTF8StringEncoding]; 

如果我想將部分arr數組轉換爲NSString *?說cde,而不是整個字符串abcdefg?我如何實現這一目標?如何將char數組的一部分轉換爲NSString *?

+0

也許使用initWithUTF8String? – CodaFi 2012-03-06 05:48:06

回答

4
NSString *s = [[NSString alloc] initWithBytes:arr + 2 
    length:3 encoding:NSUTF8StringEncoding]; 
+0

謝謝@rob,它工作!但奇怪的是沒有像'initWithBytes:(const char *)緩衝區索引這樣的方法:(int)i length:(int)l encoding:(NSStringEncoding)e'。 – neevek 2012-03-06 06:06:13

+0

你可以隨時寫一個類別。 – DrummerB 2012-08-12 15:25:03