У меня есть этот код ниже:
NSString *fileName = [[NSUserDefaults standardUserDefaults] objectForKey:@"recentDownload"];
NSString *fullPath = [NSBundle pathForResource:fileName ofType:@"txt" inDirectory:[NSHomeDirectory() stringByAppendingString:@"/Documents/"]];
NSError *error = nil;
[textViewerDownload setText:[NSString stringWithContentsOfFile:fullPath encoding: NSUTF8StringEncoding error:&error]];
textviewerdownload
textview
отображение текста из файла. Фактическое имя файла хранится в NSUserDefault
названный recentDownload
.
Когда я создаю это, я нажимаю button
который это находится под, и мое приложение crashes
.
Есть ли что-то не так с синтаксисом или просто простой ошибкой?
NSBundle
используется для поиска вещей в вашем пакете приложений, но каталог Documents находится вне пакета, поэтому способ создания пути не будет работать. Попробуйте вместо этого:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSUserDomainMask,
YES);
NSString *fullPath = [[paths lastObject] stringByAppendingPathComponent:@"recentDownload.txt"];