iOS 中使用NSFileManager来链接文件,链接又可分为软/硬链接
软链接 使用 createSymbolicLinkAtURL
[[NSFileManager defaultManager] createSymbolicLinkAtURL:[NSURL fileURLWithPath:@"链接地址"] withDestinationURL:[NSURL fileURLWithPath:@"源文件地址"] error:&error];
//用attributesOfItemAtPath来查看文件属性
[[NSFileManager defaultManager] attributesOfItemAtPath:@"文件地址" error:&error];
image.png
查看链接文件和源文件的对比,链接文件NSFileType为NSFileTypeSymbolicLink 而源文件为NSFileTypeRegular。
并且查看链接文件的文件夹下的文件大小,链接文件只有几KB的大小。
硬链接 使用 linkItemAtURL
[[NSFileManager defaultManager] linkItemAtURL:[NSURL fileURLWithPath:@"源文件地址"] toURL:[NSURL fileURLWithPath:@"链接地址"] error:&error];
//用attributesOfItemAtPath来查看文件属性
[[NSFileManager defaultManager] attributesOfItemAtPath:@"文件地址" error:&error];
image.png
硬链接的NSFileType均为NSFileTypeRegular,并无变化,但是NSFileReferenceCount 变为2,未硬链接的源文件则为1。并且链接文件夹文件大小与源文件一致。
网友评论