找出NSString中保存的URL的扩展部分

时间:2012-08-04 15:04:34

标签: ios objective-c nsstring

如何查找并保存我要保存在相册中的字段的扩展名。我想知道它是哪种格式。 例如:

http://www.example.com/myvideo.mp4http://www.example.com/mypicture.png

我需要的是.mp4和.png。如果可能,请给我示例代码。

4 个答案:

答案 0 :(得分:20)

您是否查看了NSString的文档?您只需要将-pathExtension发送到您的字符串。

如果您正在处理包含URL的字符串,则应首先将其转换为NSURL,然后提取路径:

NSString *stringURL = @"http://...";
NSURL *url = [NSURL URLWithString:stringURL];
NSString *path = [url path];
NSString *extension = [path pathExtension];

答案 1 :(得分:8)

NSURL也有pathExtension(在iOS 4.0及更高版本中可用。)

NSString *extension = [[NSURL URLWithString: @"http://sample.example.com/path/hellowwrod.ext"] pathExtension];

答案 2 :(得分:6)

参考以下代码。

NSString *path = @"http://www.mysite.com/myvideo.mp4";
NSString *lastPath = [path lastPathComponent];
NSString *fileExtension = [lastPath pathExtension]; // [path pathExtension];
NSLog(@"%@", lastPath); //myvideo.mp4
NSLog(@"%@", fileExtension); // mp4

答案 3 :(得分:0)

对于Swift:

let stringUrl = " http://www.example.com/mypicture.png"
let url = URL(string: stringUrl)
let path = url?.path
let fileExtension = url?.pathExtension