我有一個文件,我需要根據文件的創建日期替換此文件,因此如果此文件的創建日期在2013年6月23日之前,那麼我將刪除它並添加新文件,以便新創建日期爲2013年6月23日,但如果創建日期等於或等於2013年6月23日,則不執行任何操作。在iOS中檢查文件創建日期時的問題
將以上邏輯應用於開發環境時,一切正常無問題,但是當我將其部署到生產(iTunes)時,條件= true意味着代碼始終在2013年6月23日之前進入條件並刪除文件並創建一個新文件。
我的代碼是:
if ([fileManager fileExistsAtPath:writableDBPath]) {
NSDate *creationDate = [[[NSFileManager defaultManager] attributesOfItemAtPath:writableDBPath error:&error] objectForKey:NSFileCreationDate];
BOOL result = NO;
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];
[dateFormatter setDateFormat:@"yyyy-MM-dd"];
NSDate *issueDate = [dateFormatter dateFromString:@"2013-05-22"];
NSDateComponents *creationDateComponents = [CURRENT_CALENDAR components:DATE_COMPONENTS fromDate:creationDate];
NSDateComponents *issueDateComponents = [CURRENT_CALENDAR components:DATE_COMPONENTS fromDate:issueDate];
NSTimeInterval secondsBetweenCreationIssue = [[CURRENT_CALENDAR dateFromComponents:creationDateComponents] timeIntervalSinceDate:[CURRENT_CALENDAR dateFromComponents:issueDateComponents]];
if ((lround((secondsBetweenCreationIssue/86400))) <= 0) {
result = YES;
}
else{
result = NO;
}
//if the file is OLD
if (result) {
[fileManager removeItemAtPath:writableDBPath error:&error];
}
當你說開發/生產,你的意思是模擬器/設備?你是否考慮到任何地方的語言環境? – Wain
不是它的開發/生產或開發版本和商店版本 – OXXY
它在設備和模擬器在開發階段運行良好,但商店的版本不起作用 – OXXY