2016-01-21 2 views
-2

main.m для испытанияNSBundle Почему консольный вывод (null)?

NSString* filePath = [[NSBundle mainBundle] pathForResource:@"bookinf" 
                 ofType:@"txt"]; 
NSString* content = [NSString stringWithContentsOfFile:filePath 
                encoding:NSUTF8StringEncoding 
                error:nil]; 
    NSLog(@"file content : %@" , content); 

bookinf.txt Содержание: '<' Язык программирования C>

ответ

0

Вы должны отладить его шаг за шагом. pathForResource возвращает нуль, если он не может найти файл. Тогда stringWithContentsOfFile не сработает (не уверен, что он вернет нуль или сбой), если filePath равен нулю.

Как говорит Анбу в своем ответе, наиболее вероятной причиной является то, что вы не настроили файл для включения в комплект приложения. Предполагая, что вы добавили файл в свой проект, проверьте инспектор файлов и убедитесь, что ваше приложение проверено в соответствии с «целевым членством»

Смежные вопросы