Comma-separated string to NSArray in Objective-C

whitebreadb picture whitebreadb · Jan 30, 2012 · Viewed 55.1k times · Source

So I have no experience with arrays... But I need to use one to populate a UIPickerView. I am obtaining a list of objects via HTTP (NSURLConnection). This works fine. Currently, the response is stored in a NSString as a comma-separated list. I need to convert it to an array. I think this is the type of array I need:

NSArray  * myArray2 = [NSArray arrayWithObjects:@"foo",@"bar",@"baz",nil];

Maybe I'm overcomplicating things... I'm really not sure. There is already an array for the PickerView, and I have it setup so to add an item to the PickerView array I use this code:

[pickerArray addObject:@"Item 1"];

So... How do I separate the items in a comma-separated string (item 1,item 2,item 3,...) into separate array items ([pickerArray addObject:@"item 1"];)??

Answer

Andrew Madsen picture Andrew Madsen · Jan 30, 2012

Assuming there's no worry about escaping/unescaping commas contained within the strings, it should be this simple:

NSArray *items = [theString componentsSeparatedByString:@","];