Чтение текстового файла Программно с помощью Objective-C

Я новичок в программировании на iPhone

Я хочу прочитать содержимое текстового файла, находящегося в папке "Ресурс". я сделал много googling, но не смог найти правильный способ для выполнения этой задачи.

Пожалуйста, предложите

Ответ 1

Файлы в вашей папке "Ресурсы" на самом деле являются содержимым вашего пакета приложений. Поэтому сначала вам нужно получить путь к файлу в вашем приложении.

NSString* path = [[NSBundle mainBundle] pathForResource:@"filename" 
                                                 ofType:@"txt"];

Тогда загрузка содержимого в NSString еще проще.

NSString* content = [NSString stringWithContentsOfFile:path
                                              encoding:NSUTF8StringEncoding
                                                 error:NULL];

В качестве бонуса вы можете иметь разные локализованные версии filename.txt, и этот код будет правильно отображать файл выбранного языка.

Ответ 2

Первое, что вы хотите сделать, это получить путь к текстовому файлу, который вы хотите прочитать. Поскольку он находится в папке "Ресурсы", я предполагаю, что вы копируете его в основной пакет приложения. Вы можете получить путь к файлу в своем основном комплекте, используя NSBundle pathForResource:ofType:

NSBundle *mainBundle = [NSBundle mainBundle];
NSString *filePath = [mainBundle pathForResource:@"filename" ofType:@"txt"];

Затем вы можете прочитать файл по этому пути в NSString напрямую, используя initWithContentsOfFile:usedEncoding:error:

NSStringEncoding encoding;
NSError *error;
NSString *fileContents = [[[NSString alloc] initWithContentsOfFile:filePath
                                                      usedEncoding:&encoding
                                                             error:&error]
                          autorelease];