-(void)aboutNsUrl
{
NSURL *url=[NSURL URLWithString:@"https://github.com/fpillet/NSLogger/blob/master/Client%20Logger/iOS/iPhone%20Test%20App%20(ARC)/main.m"];
NSLog(@"url的协议:%@",[url scheme]);//url的协议:https
NSLog(@"url的主机:%@",[url host]);//url的主机:github.com;
NSLog(@"url的接口:%@",[url port]);//url的接口:(null)
NSLog(@"url的路径:%@",[url path]);//url的路径:/fpillet/NSLogger/blob/master/Client Logger/iOS/iPhone Test App (ARC)/main.m
NSLog(@"url的相对路径:%@",[url relativePath]);//url的相对路径:/fpillet/NSLogger/blob/master/Client Logger/iOS/iPhone Test App (ARC)/main.m
NSLog(@"url路径成分的数组展示:%@",[url pathComponents]);
/*
url路径成分的数组展示:(
"/",
fpillet,
NSLogger,
blob,
master,
"Client Logger",
iOS,
"iPhone Test App (ARC)",
"main.m"
)
*/
NSLog(@"url的参数:%@",[url parameterString]);//url的参数:(null)
NSLog(@"url的查询:%@",[url query]);//url的查询:(null)
NSLog(@"url的片段、分块:%@",[url fragment]);//url的片段、分块:(null)
/*
在由NSString生成NSURL对象时,有可能会出现NSString中包含百分号各类括号冒号等对于url来说的非法字符如果直接进行转换的话将得到nil。在对于复杂url进行转换前,可以先试试对待转换的NSString发送 stringByAddingPercentEscapesUsingEncoding: 将其转换为合法的url字符串(其实目的就是保证非法字符用UTF8编码..) 比如这样:
[@"12" stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
[@"12" stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];
以上两种方法都是转换URl的前面那个目前已经废弃
*/