#xcode #ios #plist #nsbundle
#xcode #iOS #список #nsbundle
Вопрос:
У меня есть этот код: для симулятора написать NSMutableArray в plist
NSString *path = [[NSBundle mainBundle] pathForResource: @"Array" ofType:@"plist"];
if([Array writeToFile:path atomically: YES]){
NSLog(@"write succesful");}
else {
NSLog(@"write failed");
}
но как я могу проверить, действительно ли список файлов пуст?
Комментарии:
1. у вас возникли проблемы с записью файла? или вы хотите это прочитать?
Ответ №1:
Запишите файл.
[[NSFileManger defaultManager] createFileAtPath:path contents:plistData withAttributes:attributesDictionary];
Проверьте файл на наличие массива.
NSDictionary *infoDictionary = [NSDictionary dictionaryWithContentsOfFile:path];
if ([infoDictionary count] == expectedIntegerValue) {
NSLog(@"Success");
if ([infoDictionary objectForKey:@"ARRAY_KEY"]) {
NSLog(@"Found the array!");
} else {
NSLog(@"No Array Found.");
}
} else {
NSLog(@"Fail");
}
если вы просто хотите узнать, есть ли какие-либо ключи [Количество в справочнике] > 0.
Комментарии:
1. Я хочу точно знать, как я могу записать массив в файл plist и проверить, есть ли внутри этого файла массив, но НЕ для симулятора.
2. ой, блин, забыл код для записи в файл, которого нет в основном пакете. Одну минуту.
3. это не clare… Можете ли вы написать все, что мне нужно?
Ответ №2:
Хотя этот код работает в симуляторе iOS, вы не сможете выполнять запись в свой пакет приложений на устройствах iOS.
Комментарии:
1. Вероятно, вы захотите выполнить запись в папку documents:
[[[NSFileManager defaultManager] URLsForDirectory: NSDocumentDirectory inDomains: NSUserDomainMask] lastObject]