NJones прав: CSV-файлы отстой, и вы не часто видите их в Objective-C, поэтому старайтесь избегать их.
Однако вы можете загрузить файл CSV со следующим кодом:
NSString *filePath = [[NSBundle mainBundle] pathForResource:@"food" ofType:@"csv"];
NSString *fileContents = [[NSString alloc] initWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:&error];
Если у вас есть содержимое CSV, сохраненное в памяти, либо из файла на диске, либо из веб-службы, вы можете превратить его в массив записей строк:
NSArray *lines = [fileContents componentsSeparatedByString:@"\n"];
Первая строка в CSV-файле - это, как правило, заголовок, но после его удаления (или игнорирования) просто нужно перечислить остальные строки.
for (NSString *record in lines) {
NSArray *values = [record componentsSeparatedByString:@","];
//values is now an array of the contents of the CSV file. Do stuff with it.
}
В этом коде много говорится о структуре файла CSV, например, о том, что в названиях продуктов нет запятых и т. Д. В общем, по возможности избегайте файлов CSV. Взгляните на сохраняющиеся данные на диске в формате JSON или, что еще лучше, в качестве хранилища базовых данных.