//Get document Path+ (NSString *) getdocumentpath{Nsarray*filepaths =nssearchpathfordirectoriesindomains (NSDocumentDirectory, Nsuserdomainmask, YES); return[Filepaths Objectatindex:0];}//get the library path+ (NSString *) getlibrarypath{Nsarray*filepaths =nssearchpathfordirectoriesindomains (Nslibrarydirectory, Nsuserdomainmask, YES); return[Filepaths Objectatindex:0];}//Get application Path+ (NSString *) getapplicationpath{returnnshomedirectory ();}//get the cache path+ (NSString *) getcachepath{Nsarray*filepaths =nssearchpathfordirectoriesindomains (Nscachesdirectory, Nsuserdomainmask, YES); return[Filepaths Objectatindex:0];}//Get temp Path+ (NSString *) gettemppath{returnnstemporarydirectory ();}//determine if the file exists in a path+ (BOOL) Fileisexistofpath: (NSString *) filepath{BOOL flag=NO; Nsfilemanager*filemanager =[Nsfilemanager Defaultmanager]; if([FileManager Fileexistsatpath:filepath]) {flag=YES; } Else{flag=NO; } returnFlag;}//remove a file from a path+ (BOOL) Removefileofpath: (NSString *) filepath{BOOL flag=YES; Nsfilemanager*filemanage =[Nsfilemanager Defaultmanager]; if([filemanage Fileexistsatpath:filepath]) {if(![Filemanage Removeitematpath:filepath Error:nil]) {Flag=NO; } } returnFlag;}//remove a file from the URL path-(BOOL) Removefileofurl: (Nsurl *) fileurl{BOOL flag=YES; Nsfilemanager*filemanage =[Nsfilemanager Defaultmanager]; if([filemanage FileExistsAtPath:fileURL.path]) {if(![Filemanage removeitematurl:fileurl Error:nil]) {Flag=NO; } } returnFlag;}//Create file path+ (BOOL) Creatdirectorywithpath: (NSString *) dirpath{BOOL ret=YES; BOOL isexist=[[Nsfilemanager Defaultmanager] fileexistsatpath:dirpath]; if(!isexist) {Nserror*error; BOOL issuccess= [[Nsfilemanager Defaultmanager] Createdirectoryatpath:dirpath withintermediatedirectories:yes attributes:nil Error :&ERROR]; if(!issuccess) {ret=NO; NSLog (@"creat Directory Failed. errorinfo:%@", error); } } returnret;}//Create a file+ (BOOL) Creatfilewithpath: (NSString *) filepath{BOOL issuccess=YES; Nsfilemanager*filemanager =[Nsfilemanager Defaultmanager]; BOOL Temp=[FileManager Fileexistsatpath:filepath]; if(temp) {returnYES; } nserror*error; //stringbydeletinglastpathcomponent: Delete the last path nodeNSString *dirpath =[FilePath stringbydeletinglastpathcomponent]; Issuccess= [FileManager createdirectoryatpath:dirpath withintermediatedirectories:yes Attributes:nil error:&ERROR]; if(Error) {NSLog (@"creat File Failed. errorinfo:%@", error); } if(!issuccess) { returnissuccess; } issuccess=[FileManager Createfileatpath:filepath contents:nil Attributes:nil]; returnissuccess;}//Save File+ (BOOL) SaveFile: (NSString *) FilePath withdata: (NSData *) data{BOOL ret=YES; RET=[self creatfilewithpath:filepath]; if(ret) {ret=[Data Writetofile:filepath Atomically:yes]; if(!ret) {NSLog (@"%s Failed", __function__); } } Else{NSLog (@"%s Failed", __function__); } returnret;}//Append Write File+ (BOOL) AppendData: (NSData *) data withpath: (NSString *) path{BOOL result=[self creatfilewithpath:path]; if(Result) {Nsfilehandle*handle =[Nsfilehandle Filehandleforwritingatpath:path]; [Handle seektoendoffile]; [Handle writedata:data]; [Handle synchronizefile]; [Handle closefile]; returnYES; } Else{NSLog (@"%s Failed", __function__); returnNO; }}//Get File+ (NSData *) Getfiledata: (NSString *) filepath{Nsfilehandle*handle =[Nsfilehandle Filehandleforreadingatpath:filepath]; NSData*filedata =[handle readdatatoendoffile]; [Handle closefile]; returnFileData;}//Read File+ (NSData *) Getfiledata: (NSString *) FilePath StartIndex: (Long Long) StartIndex Length: (nsinteger) length{Nsfilehandle*handle =[Nsfilehandle Filehandleforreadingatpath:filepath]; [Handle Seektofileoffset:startindex]; NSData*data =[handle readdataoflength:length]; [Handle closefile]; returndata;}//Moving Files+ (BOOL) Movefilefrompath: (NSString *) Frompath Topath: (NSString *) topath{Nsfilemanager*filemanager =[Nsfilemanager Defaultmanager]; if(![FileManager Fileexistsatpath:frompath]) {NSLog (@"Error:frompath not Exist"); returnNO; } if(![FileManager Fileexistsatpath:topath]) {NSLog (@"Error:topath not Exist"); returnNO; } nsstring*headercomponent =[Topath stringbydeletinglastpathcomponent]; if([self creatfilewithpath:headercomponent]) {return[FileManager Moveitematpath:frompath topath:topath Error:nil]; } Else { returnNO; }}//Copy Files+ (BOOL) Copyfilefrompath: (NSString *) Frompath Topath: (NSString *) topath{Nsfilemanager*filemanager =[Nsfilemanager Defaultmanager]; if(![FileManager Fileexistsatpath:frompath]) {NSLog (@"Error:frompath not Exist"); returnNO; } if(![FileManager Fileexistsatpath:topath]) {NSLog (@"Error:topath not Exist"); returnNO; } nsstring*headercomponent =[Topath stringbydeletinglastpathcomponent]; if([self creatfilewithpath:headercomponent]) {return[FileManager Copyitematpath:frompath topath:topath Error:nil]; } Else { returnNO; }}//get a list of files under a folder+ (Nsarray *) Getfilelistinfolderwithpath: (NSString *) path{Nsfilemanager*filemanager =[Nsfilemanager Defaultmanager]; Nserror*error; Nsarray*filelist = [FileManager contentsofdirectoryatpath:path error:&ERROR]; if(Error) {NSLog (@"getfilelistinfolderwithpathfailed, errorinfo:%@", error); } returnfileList;}//Get File Size+ (Long Long) Getfilesizewithpath: (NSString *) path{unsignedLong LongFilelength =0; NSNumber*fileSize; Nsfilemanager*filemanager =[Nsfilemanager Defaultmanager]; Nsdictionary*fileattributes =[FileManager Attributesofitematpath:path Error:nil]; if((FileSize =[FileAttributes objectforkey:nsfilesize])) {Filelength=[FileSize Unsignedlonglongvalue]; } returnfilelength;//nsfilemanager* manager =[nsfilemanager Defaultmanager];//if ([manager Fileexistsatpath:path]) {//return [[Manager Attributesofitematpath:path Error:nil] fileSize];// }//return 0;}//Get file creation time+ (NSString *) Getfilecreatdatewithpath: (NSString *) path{NSString*date =Nil; Nsfilemanager*filemanager =[Nsfilemanager Defaultmanager]; Nsdictionary*fileattributes =[FileManager Attributesofitematpath:path Error:nil]; Date=[FileAttributes objectforkey:nsfilecreationdate]; returndate;}//Get file owner+ (NSString *) Getfileownerwithpath: (NSString *) path{NSString*fileowner =Nil; Nsfilemanager*filemanager =[Nsfilemanager Defaultmanager]; Nsdictionary*fileattributes =[FileManager Attributesofitematpath:path Error:nil]; Fileowner=[FileAttributes Objectforkey:nsfileowneraccountname]; returnFileowner;}//Get file Change Date+ (NSString *) Getfilechangedatewithpath: (NSString *) path{NSString*date =Nil; Nsfilemanager*filemanager =[Nsfilemanager Defaultmanager]; Nsdictionary*fileattributes =[FileManager Attributesofitematpath:path Error:nil]; Date=[FileAttributes objectforkey:nsfilemodificationdate]; returndate;}
Common operations integration for Nsfilemanager files in iOS