با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن ، جلسه پانزدهم از آموزش های دوره iOS را با پردازش فایل در iOS یا File Handling آغاز می کنیم.پردازش فایل را نمی توان به صورت بصری با برنامه توضیح داد و از این رو روش های کلیدی که برای مدیریت فایل ها مورد استفاده قرار می گیرند، در زیر توضیح داده شده است. توجه داشته باشید که بسته نرم افزاری تنها اجازه خواندن دارد و ما نمی توانیم فایل ها را تغییر دهیم. به هر حال می توانید پوشه اسناد درخواست خود را در برنامه تان تغییر دهید.
روشهای استفاده شده در پردازش فایل(File Handling)
روش های مورد استفاده برای دسترسی و دستکاری فایل ها در زیر مورد بحث قرار می گیرد. در اینجا ما باید پروندههای FilePath1، FilePath2 و FilePath را به مسیرهای پرونده کامل پرونده اضافه می کنیم تا عمل(action) مورد نظر را بدست آوریم.
کلاس FileManager شامل یک روش نمونه به نام (:fileExistsatPath ) است که بررسی می کند که یک فایل مشخص شده در حال حاضر وجود دارد. این روش، به عنوان یک استدلال، یک شی NSString که حاوی مسیر فایل مورد نظر است و یک مقدار بولی را نشان می دهد که نشان دهنده حضور یا غیره از پرونده مشخص شده است:
1 2 3 4 5 6 7 8 9 10 | NSFileManager *fileManager = [NSFileManager defaultManager]; //Get documents directory NSArray *directoryPaths = NSSearchPathForDirectoriesInDomains (NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDirectoryPath = [directoryPaths objectAtIndex:0]; if ([fileManager fileExistsAtPath:@""]==YES) { NSLog(@"File exists"); } |
1 2 3 | if ([fileManager contentsEqualAtPath:@"FilePath1" andPath:@" FilePath2"]) { NSLog(@"Same content"); } |
1 2 3 4 5 6 7 8 9 10 11 | if ([fileManager isWritableFileAtPath:@"FilePath"]) { NSLog(@"isWritable"); } if ([fileManager isReadableFileAtPath:@"FilePath"]) { NSLog(@"isReadable"); } if ( [fileManager isExecutableFileAtPath:@"FilePath"]) { NSLog(@"is Executable"); } |
1 2 3 4 | if([fileManager moveItemAtPath:@"FilePath1" toPath:@"FilePath2" error:NULL]) { NSLog(@"Moved successfully"); } |
1 2 3 4 | if ([fileManager copyItemAtPath:@"FilePath1" toPath:@"FilePath2" error:NULL]) { NSLog(@"Copied successfully"); } |
1 2 3 | if ([fileManager removeItemAtPath:@"FilePath" error:NULL]) { NSLog(@"Removed successfully"); } |
1 | NSData *data = [fileManager contentsAtPath:@"Path"]; |
1 | [fileManager createFileAtPath:@"" contents:data attributes:nil]; |
منظور از پردازش فایل در iOS یا File Handling همان اعمالی است که می توان روی فایل ها اعم از حذف فایل ، انتقال فایل ،کپی کردن فایل و … انجام داد.با ما همراه باشید تا در جلسه بعد ، دسترسی به نقشه ها در iOS را آموزش ببینیم.