Какой самый быстрый способ определить, соответствует ли файл реализации NSCoding определенного класса? - PullRequest
3 голосов
/ 21 марта 2010

Дано: Приложение, которое обращается к каталогу файлов: некоторый простой текст, некоторые двоичные файлы, которые придерживаются определенной реализации NSCoding, и, возможно, другие двоичные файлы, которые просто не понимают, как обрабатывать.

Я хочу: Уметь выяснить, какие из файлов в этом каталоге соответствуют моему классу NSCoding, и я бы предпочел не прибегать к наивному подходу загрузки всего каждого файла в память, пытаясь разархивировать каждый.

У кого-нибудь есть элегантный подход или шаблон к этой проблеме?

1 Ответ

1 голос
/ 21 марта 2010

Цель системы универсального идентификатора типа (UTI) состоит в том, чтобы предотвратить эту элегантную проблему, которую невозможно решить.Если три типа файлов не имеют различающихся UTI (и расширений файлов), вам, вероятно, не повезло.Если вы столкнулись с этой проблемой, и по-прежнему можете контролировать генерацию файлов, присвойте им уникальные UTI и объявите эти UTI в Info.plist вашего приложения.

...