Цель-C загрузки данных из Excel

Я пишу приложение для iPad, которое сообщит нам, есть ли кто-то на корте на теннисном турнире. По сути, это просто приложение со списком имен, рядом с которым есть кнопка включения / выключения. После нажатия кнопки включения их имя становится красным, поэтому они находятся на корте.

Есть ли способ сделать это проще для себя, я бы смог подключить его к компьютеру и загрузить список имен после завершения приложения? Это избавило бы меня от необходимости индивидуально вводить / изменять имена вручную.

Заранее спасибо, Луис.

 CarlJ02 апр. 2012 г., 12:13
Вы можете экспортировать свою таблицу Excel в CSV-файл и импортировать этот файл в свое приложение.

Ответы на вопрос(2)

а не только для этого кода. Действительно, если поля CSV содержат запятые, это не работает. Многое случится, если ваши стандарты чисел используют запятые для чисел с плавающей точкой вместо точек.

Я склонен всегда использовать CSV, где разделитель полей - TAB (или «\ t») вместо запятой. Гораздо более вероятно, что он не будет сломан. Обычно это настраивается в инструментах, создающих CSV, таких как Excel.

Решение Вопроса

Импортировать данные в виде электронных таблиц можно легко, импортировав.csv версия (значение, разделенное запятыми) электронной таблицы.

A значения через запятую (CSV) В файле хранятся табличные данные (цифры и текст) в виде простого текста. Простой текст означает, что файл представляет собой последовательность символов без данных, которые должны интерпретироваться вместо этого, как двоичные числа. Файл CSV состоит из любого количества записей, разделенных каким-либо видом разрывов строк; каждая запись состоит из полей, разделенных каким-либо другим символом или строкой, обычно литералом TAB или запятой. Обычно все записи имеют одинаковую последовательность полей.

Пример :

Year,Make,Model,Length
1997,Ford,E350,2.34
2000,Mercury,Cougar,2.38

Тогда вы можете просто:

(1) Загрузите ваш CSV-файл в виде простого текстового файла

NSString* contents = [NSString stringWithContentsOfFile:filename
                                               encoding:NSUTF8StringEncoding 
                                                  error:nil];

(2) Получить линии

NSArray* lines = [contents componentsSeparatedByString:@"\n"];

(3) Разобрать поля каждой строки

for (NSString* line in lines)
{
    NSArray* fields = [line componentsSeparatedByString:@","];
}
 Dr.Kameleon02 апр. 2012 г., 12:21
@ loucidity При первом прочтении я не был уверен, хотите ли вы знать, как написать приложение для iPad, если у вас возникли проблемы с загрузкой данных (через веб-запрос?), или если вы просто хотите узнать лучшее способ импорта данных электронной таблицы ...
 Dr.Kameleon02 апр. 2012 г., 13:12
@ loucidity Не за что. :-) Чтобы сообществу было проще понять, какой ответ был действительно полезным, вы можете пометить ответ как «Ответ» ...
 loucidity02 апр. 2012 г., 13:10
Просто лучший способ импортировать данные электронных таблиц, на которые вы ответили довольно хорошо. Еще раз спасибо.
 Tommy10 апр. 2012 г., 09:12
Если я осмелюсь указать на это - разделение на запятые приведет к тому, что любые метки с запятыми внутри будут неправильно разделены. Я предполагаю, что это будут такие вещи, как «Эд Бегли, младший», которые являются единственными потенциальными проблемами, так что, является ли это реальной проблемой или нет, я не знаю.
 loucidity02 апр. 2012 г., 12:16
Спасибо, это поможет. Почему мой вопрос расплывчат? Я постараюсь уточнить на основании вашего ответа на это.

Ваш ответ на вопрос