Iphone 为什么[url pathComponents]包含“/”?
例如Iphone 为什么[url pathComponents]包含“/”?,iphone,objective-c,url,nsurl,Iphone,Objective C,Url,Nsurl,例如 NSURL *url = [NSURL URLWithString:@"eg://resources/users/1/answers/2"]; NSLog(@"%@", [url pathComponents]); >> ( "/", "users", "a", "answers", "b" ) 1为什么路径包含/ 2如果我想要的是用户,那么使用第一个索引是否安全 [[url pathComponents] objectAtIndex:1]; 1在本例中,/是根目录。路径
NSURL *url = [NSURL URLWithString:@"eg://resources/users/1/answers/2"];
NSLog(@"%@", [url pathComponents]);
>> ( "/", "users", "a", "answers", "b" )
1为什么路径包含/
2如果我想要的是用户,那么使用第一个索引是否安全
[[url pathComponents] objectAtIndex:1];
1在本例中,/是根目录。路径中目录之间的其他斜杠只是分隔符,但根文件夹很重要。users/1/answers/2可能指向与/users/1/answers/2不同的位置,前者相对于当前目录,后者始终从根文件夹开始
2是,如果URL是绝对URL,而不是相对URL。但是您可以先使用absoluteURL方法获取绝对URL,然后再获取组件。但是,如果URL只是http://www.example.com/,您将得到的只是/仅此而已,没有子目录。当您硬编码索引时,您的iPhone不会爆炸,这是安全的:呵呵。当我看到一个神奇的数字时,我的脚无法控制地颤抖,尤其是在需要一周时间才能更新的东西上!现在完全有道理了。但是你可以先用absoluteURL方法获取绝对URL,然后再获取组件-好的信息