iOS - Xử lý tệp

Việc xử lý tệp không thể được giải thích trực quan với ứng dụng và do đó các phương pháp chính được sử dụng để xử lý tệp được giải thích bên dưới. Lưu ý rằng gói ứng dụng chỉ có quyền đọc và chúng tôi sẽ không thể sửa đổi tệp. Bạn vẫn có thể sửa đổi thư mục tài liệu của ứng dụng của mình.

Các phương pháp được sử dụng trong xử lý tệp

Các phương pháp được sử dụng cho accessingmanipulatingcác tập tin được thảo luận dưới đây. Ở đây, chúng tôi phải thay thế các chuỗi FilePath1, FilePath2 và FilePath thành các đường dẫn tệp đầy đủ theo yêu cầu của chúng tôi để có được hành động mong muốn.

Kiểm tra xem tệp có tồn tại ở đường dẫn không

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");
}

So sánh hai nội dung tệp

if ([fileManager contentsEqualAtPath:@"FilePath1" andPath:@" FilePath2"]) {
   NSLog(@"Same content");
}

Kiểm tra xem có thể ghi, đọc được và có thể thực thi hay không

if ([fileManager isWritableFileAtPath:@"FilePath"]) {
   NSLog(@"isWritable");
}

if ([fileManager isReadableFileAtPath:@"FilePath"]) {
   NSLog(@"isReadable");
}

if ( [fileManager isExecutableFileAtPath:@"FilePath"]) {
   NSLog(@"is Executable");
}

Di chuyển tệp tin

if([fileManager moveItemAtPath:@"FilePath1" 
   toPath:@"FilePath2" error:NULL]) {
   NSLog(@"Moved successfully");
}

Sao chép tệp

if ([fileManager copyItemAtPath:@"FilePath1" 
   toPath:@"FilePath2"  error:NULL]) {
   NSLog(@"Copied successfully");
}

Xóa tệp

if ([fileManager removeItemAtPath:@"FilePath" error:NULL]) {
   NSLog(@"Removed successfully");
}

Đọc tài liệu

NSData *data = [fileManager contentsAtPath:@"Path"];

Viết tệp

[fileManager createFileAtPath:@"" contents:data attributes:nil];