路径类NSURL的使用

NSURL 类作为路径和地址的表示类,在各种场合都发挥很大的作用。

初始化

共有18中初始化方法 (9种实例化方法 + 9种工厂方法)

init...
URLWith...
fileURLWith...

比较方法

isEqual:

查询一个NSURL

checkResourceIsReachableAndReturnError:  返回一个文件URL指向的资源是否可达
isFileReferenceURL
isFileURL

常量

NSURLFileScheme : 文件URL的scheme
还有一堆文件资源的key,如 属性修改日期、访问日期、内容修改日期、创建日期、自定义Icon、文件标识符、文件类型、文件安全、是否隐藏扩展名、是否是文件夹等

NSURL的属性:

例如:scheme、user、password、host、port、path、pathComponents、pathExtension、lastPathComponent、parameterString、fragment

get和set File System Resource Properties(这部分需要加强理解)

NSString *size = Nil;
NSError *error = [[NSError alloc] initWithDomain:@"1" code:1 userInfo:Nil];

NSURL *samplePath = [[NSURL alloc] initWithString:@"file://Users/Users/zxq/Desktop/1.pdf"];

//获取文件的大小
[samplePath getResourceValue:&size forKey:NSURLFileSizeKey error:&error];

[samplePath getResourceValue:&size forKey:NSURLTotalFileSizeKey error:&error];

//获取文件地址

[samplePath getResourceValue:&size forKey:NSURLPathKey error:&error];

//获取最后修改的时间

[samplePath getResourceValue:&size forKey:NSURLCreationDateKey error:&error];

//获取文件名
[samplePath getResourceValue:&size forKey:NSURLNameKey error:&error];
NSLog(@"Error == %@", error);
NSLog(@"size == %@", size);


//是否可达
NSLog(@"%d", [samplePath checkPromisedItemIsReachableAndReturnError:&error]);

NSLog(@"%d", [samplePath isFileReferenceURL]);
NSLog(@"%d", [samplePath isFileURL]);