NSData *data = [NSKeyedArchiver archivedDataWithRootObject:Array];
NSLog(@"data = %@",data);
NSArray *array = [NSKeyedUnarchiver unarchiveObjectWithData:data];
NSLog(@"array = %@",array);
Use NSKeyedArchiver (which is the last sentence of the post Garrett links):
Note that all the objects in
array must conform to the
NSCoding protocol. If these are custom objects, then that means you need to read up on Encoding and Decoding Objects.
Note that this will create a fairly hard-to-read property list format, but can handle a very wide range of objects. If you have a very simple array (strings for instance), you may want to use NSPropertyListSerialization, which creates a bit simpler property list:
There's also an XML format constant you can pass if you'd rather it be readable on the wire.