Загрузка файлов данных в проект iPhone - PullRequest
6 голосов
/ 26 ноября 2008

Как можно прочитать файл данных в проекте iPhone? Например, допустим, у меня есть статический файл с именем «level.dat», который имеет следующую структуру: препятствий: 10 время: 100 препятствие 1: 10,20 ...

Я хотел бы прочитать содержимое файла в строку NSString, а затем выполнить анализ. Как мне прочитать содержимое файла в строку? Кроме того, где в проекте должен находиться файл "level.dat"? Это должно быть в разделе «Ресурсы» или просто в главном каталоге?

Заранее спасибо!

Ответы [ 4 ]

18 голосов
/ 26 ноября 2008

См. Этот ответ: Как выполнить fopen () на iPhone? , который показывает, как получить доступ к ресурсам в вашем комплекте. Как только у вас есть путь, просто используйте [NSString stringWithContentsOfFile: encoding: error:].

NSString   *path = [[NSBundle mainBundle] pathForResource: @"level" ofType: @"dat"]
NSError    *error = nil;
NSString   *data = [NSString stringWithContentsOfFile: path 
                                             encoding: NSUTF8StringEncoding 
                                                error: &error];
3 голосов
/ 27 ноября 2008

Хотя это не то, о чем вы просили, подумайте о том, чтобы превратить ваши файлы в списки. Вам придется переформатировать их в XML, но затем вы можете загрузить их прямо в NSDictionary с помощью:

dict = [NSDictionary dictionaryWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"levels" ofType:@"plist"]];
0 голосов
/ 07 декабря 2008

Рассматривали ли вы размещение данных в базе данных SQLite вместо простого файла? Я считаю, что API очень прост в использовании на iPhone.

Теперь я храню все данные на телефоне.

0 голосов
/ 27 ноября 2008

Если вам нужна помощь в разборе строки данных, есть полезная статья на Какао для ученого

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...