Смущен поведением NSBundle

У меня есть файл plist, который находится в каталоге Templates моего каталога .app. Таким образом, этот файл plist загружается без проблем:

NSDictionary *sqlPropertyList = [NSDictionary dictionaryWithContentsOfFile:[[NSBundle mainBundle] pathForResource:CH_PQ_QUERIES ofType:@"plist"]];

Я создал файл .txt в том же каталоге и попытался загрузить его таким же образом:

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"excel2004" ofType:@"xml"];

Но filePath всегда был нулевым, даже несмотря на то, что пакет был загружен.

Что тут происходит? Почему спискам разрешено находиться в подкаталогах, а другим файлам нельзя? Файл plist загружается случайно, и я не должен полагаться на это поведение?

Спасибо


person ruipacheco    schedule 10.02.2010    source источник
comment
Каково значение CH_PQ_QUERIES? Вы чистили проект перед проверкой, работает ли загрузка plist? В оболочке вашего приложения может быть более старая копия файла plist.   -  person Nikolai Ruhe    schedule 10.02.2010
comment
Файл .txt или файл .xml?   -  person kennytm    schedule 10.02.2010
comment
XML-файл, который я читаю как текст.   -  person ruipacheco    schedule 10.02.2010


Ответы (1)


Это может быть глупый вопрос, но вы говорите, что создали файл «txt», но ваш вызов pathToResource:ofType: указывает xml в качестве типа. Это правильно? И, конечно же, любые подобные файлы должны находиться в каталоге Resources вашего пакета приложений.

person Alex    schedule 10.02.2010