Я сделал файл UMsgs.plist следующим образом
и вызовите метод ниже
-(void) checkIsChangedUMsg
{
BOOL isNewMsg = NO;
NSString *destPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
destPath = [destPath stringByAppendingPathComponent:@"UMsgs.plist"];
// If the file doesn't exist in the Documents Folder, copy it.
NSFileManager *fileManager = [NSFileManager defaultManager];
if (![fileManager fileExistsAtPath:destPath]) {
NSString *sourcePath = [[NSBundle mainBundle] pathForResource:@"UMsgs" ofType:@"plist"];
[fileManager copyItemAtPath:sourcePath toPath:destPath error:nil];
}
// Load the Property List.
NSMutableArray *dataArray = [[NSMutableArray alloc] initWithContentsOfFile:destPath];
for( int i = 0; i < [dataArray count] ;i++)
{
NSString * oldMessengerID = [dataArray[i] objectForKey:@"messengerid"];
NSString * oldMessageCount = [dataArray[i] objectForKey:@"messageCount"];
NSString * newMessengerID = [UMsgsInfoArray[i] objectForKey:@"messengerid"];
NSString * newMessageCount = [UMsgsInfoArray[i] objectForKey:@"messageCount"];
if( !([oldMessengerID isEqualToString:newMessengerID] &&
[oldMessageCount isEqualToString:newMessageCount]) )
{
NSDictionary * newDict = [[NSDictionary alloc] initWithObjectsAndKeys:newMessageCount,@"messageCount",newMessengerID,@"messengerid",nil];
dataArray[i] = newDict;
isNewMsg = YES;
}
}
if(isNewMsg)
{
BOOL success = [dataArray writeToFile:destPath atomically:YES];
}
}
массив данных
но [dataArray writeToFile:destPath атомарно:YES]; вернуть НЕТ
почему это не работает? как мне это исправить?