3
char arr[] = "abcdefg";
// I know I can do this
NSString *s = [[NSString alloc] initWithCString:arr encoding:NSUTF8StringEncoding];

If I want to convert part of the arr array into an NSString*? say cde rather then the whole string abcdefg? How do I achieve that?

neevek
  • 11,760
  • 8
  • 55
  • 73

1 Answers1

4
NSString *s = [[NSString alloc] initWithBytes:arr + 2
    length:3 encoding:NSUTF8StringEncoding];
rob mayoff
  • 375,296
  • 67
  • 796
  • 848
  • Thank you @rob, It worked! But it is strange that there's no method like `initWithBytes:(const char*)buffer index:(int)i length:(int)l encoding:(NSStringEncoding)e`. – neevek Mar 06 '12 at 06:06
  • You could always write a category. – DrummerB Aug 12 '12 at 15:25