iPhone中,在网络中的数据流中提取链接中的文件名称时,有很多方法,这里总结一些。
方法一:最直接。
NSString * urlString = @”http://www.baidu.com/img/test.mp3”;
NSString *fileName = [urlString lastPathComponent];
NSLog(@”%@”,fileName);
方法二:根据字符或者时字符串分割。
Object -C
NSString *link = @”http://www.baidu.com/video/test.mp3”;
NSString *filename = [[NSString alloc] init];
NSArray *SeparatedArray = [[NSArray alloc]init];
SeparatedArray =[link componentsSeparatedByString:@"/"];
filename = [SeparatedArray lastObject];
NSLog(@”%@”,SeparatedArray);
NSLog(@”%@”,filename);
[filename release];
方法三:将链接看成路径。
NSString * urlString = @”http://www.baidu.com/video/test.mp3”;
NSArray *urlCom = [[NSArray alloc]initWithArray:[url pathComponents]];
NSLog(@”%@”,[urlCom lastObject]);
[urlCom release];
方法四:NSRange.它在截取二进制文件的时候十分方便。
NSString * urlString = @”http://www.baidu.com/video/test.mp3”;
NSString * fileName;
NSRange range = [urlString rangeOfString:@"/" options:NSBackwardsSearch];
if (range.location != NSNotFound)
{
fileName = [urlString substringFromIndex:range.location+1];
if([[fileName lowercaseString]hasSuffix:@”.mp3”])
{
NSLog(@”%@”,fileName);
}
else
{
}
}
else
{
return;
}