Оберните это до NSData с:
NSData *data = [NSKeyedArchiver archivedDataWithRootObject:contactList];
Затем сохраните NSData в файл с:
[data writeToFile:@"/Users/subhranil/Desktop/contactList" atomically:NO];
Позже вы можете восстановить данные обратно в NSArray, используя:
NSData *data = [NSData dataWithContentsOfFile: @"yourFilePath"];
NSArray *array = [NSKeyedUnarchiver unarchiveObjectWithData:data]
Просто убедитесь, что объекты внутри вашего NSArray
соответствуют NSCoding
.