Как использовать NSScanner для анализа файла .ics

Может ли кто-нибудь показать, как я могу разобрать файл ics с помощью NSScanner? (приложение для айфона)

например: если файл .ics находился по этому URL-адресу http://www.ibz.com/data/12345.ics (не настоящий URL!!!)

  1. Как бы я сначала сохранил файл .ics в своем приложении для iphone

  2. а затем, во-вторых, как мне разобрать файл .ics с помощью NSScanner ??

Приведите примеры кода..


person Ibz    schedule 24.02.2011    source источник


Ответы (1)


Примеры кода, чтобы сделать это полностью и хорошо, были бы довольно обширными, и SO не место для больших примеров приложений. Имея это в виду, общие решения будут такими:

  1. Используйте NSURLRequest и NSURLConnection получить HTTP-соединение для загрузки файла; сохраните его как объект NSData, созданный во время вызовов делегатов из NSURLConnection. После полной загрузки преобразуйте его в NSString для разбора. Руководство по программированию системы загрузки URL содержит ряд примеров - ищите NSURLConnection и асинхронные запросы.
  2. Чтобы проанализировать файл .ics (который на данный момент доступен как NSString), вам сначала нужно выяснить ожидаемый формат файла. В В Википедии есть несколько примеров того, как файлы .ics хранят данные. По сути, вам нужно просмотреть и отсканировать строки, разделенные различными разделителями, которые использует формат файла (в основном это двоеточия).

Если у вас есть более конкретные вопросы, вы, вероятно, получите гораздо более конкретные ответы - попробуйте и спросите больше, если вы застряли!

person Tim    schedule 25.02.2011
comment
Спасибо, Тим. Я тоже за нечто подобное. Чтобы проанализировать файл .ics. Я скачал его и сохранил в каталоге документов. Есть ли шанс, что UIDocumentInteractionController можно использовать для открытия/импорта файла .ics. В примечаниях к выпуску iOS 4.2 они дали подобное. Но я не могу открыть файл/даже хотя бы просмотреть его. Пожалуйста, помогите, если какое-либо обновление. В любом случае я попробую использовать NSScanner и сообщу вам об обновлениях. - person Sagar S. Kadookkunnan; 23.09.2011