下面是官方的说明:

源字符串

 
--->    
结果字符串
“/tmp/scratch.tiff”  
--->    
“scratch.tiff”
“/tmp/scratch”  
--->    
“scratch”
“/tmp/”  
--->    
“tmp”
“scratch”  
--->    
“scratch”
“/”  
--->    
“/”

获取网络数据或者路径的文件名以及后缀
2012年02月10日 星期五 14:38
//
从路径中获得完整的文件名(带后缀)

exestr = [filePath lastPathComponent]; 
NSLog(@"%@",exestr); 
// 获得文件名(不带后缀) 
exestr = [exestr
stringByDeletingPathExtension];

NSLog(@"%@",exestr); 
 
// 获得文件的扩展类型(不带'.') 
exestr = [filePath pathExtension]; 
NSLog(@"%@",exestr);

NSString *path = @"~/textFile.txt"; 
NSString *pathExtension = [path
pathExtension]; 
pathExtension这个字符串的值将是“txt”。句点将被去掉了。如果没有句点指明扩展名,将返回一个空串。如果文件不存在,也将返回空串

[[imageName componentsSeparatedByString:@"."]
objectAtIndex:0] 
用.分开, objectAtIndex:0为文件名,
objectAtIndex:1为后缀

iPhone-获取网络数据或者路径的文件名

iPhone中,在网络中的数据流中提取链接中的文件名称时,有很多方法,这里总结一些。 
方法一:最直接。 
NSString * urlString =
@”http://www.baidu.com/img/baidu_logo_fqj_10.gif”;

NSString *fileName = [urlString
lastPathComponent]; 
NSLog(@”%@”,fileName); 
 
方法二:根据字符或者时字符串分割。 
NSString *link =
@”http://www.baidu.com/img/baidu_logo_fqj_10.gif”;

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/img/baidu_logo_fqj_10.gif”;

NSArray *urlCom = [[NSArray alloc]initWithArray:[url
pathComponents]]; 
NSLog(@”%@”,[urlCom lastObject]); 
[urlCom release];

方法四:NSRange.它在截取二进制文件的时候十分方便。 
NSString * urlString =
@”http://www.baidu.com/img/baidu_logo_fqj_10.gif”;

NSString * fileName; 
NSRange range = [urlString rangeOfString:@"/"
options:NSBackwardsSearch]; 
if (range.location != NSNotFound) 

fileName = [urlString
substringFromIndex:range.location+1]; 
if([[fileName
lowercaseString]hasSuffix:@”.gif”]) 

NSLog(@”%@”,fileName); 


else 

return; 
}

 
 
 

lastPathComponent的功能的更多相关文章

  1. 制作类似ThinkPHP框架中的PATHINFO模式功能

    一.PATHINFO功能简述 搞PHP的都知道ThinkPHP是一个免费开源的轻量级PHP框架,虽说轻量但它的功能却很强大.这也是我接触学习的第一个框架.TP框架中的URL默认模式即是PathInfo ...

  2. PHP搭建大文件切割分块上传功能

    背景 在网站开发中,文件上传是很常见的一个功能.相信很多人都会遇到这种情况,想传一个文件上去,然后网页提示"该文件过大".因为一般情况下,我们都需要对上传的文件大小做限制,防止出现 ...

  3. SQL Server2014 SP2新增的数据库克隆功能

    SQL Server2014 SP2新增的数据库克隆功能 创建测试库 --创建测试数据库 create database testtest use testtest go --创建表 )) --插入数 ...

  4. SQL Server 数据加密功能解析

    SQL Server 数据加密功能解析 转载自: 腾云阁 https://www.qcloud.com/community/article/194 数据加密是数据库被破解.物理介质被盗.备份被窃取的最 ...

  5. Taurus.MVC 2.2 开源发布:WebAPI 功能增强(请求跨域及Json转换)

    背景: 1:有用户反馈了关于跨域请求的问题. 2:有用户反馈了参数获取的问题. 3:JsonHelper的增强. 在综合上面的条件下,有了2.2版本的更新,也因此写了此文. 开源地址: https:/ ...

  6. TinyWeb v1.0 正式完成第一个Release版本(功能基于 libuv 跨平台库)

    使用方法很简单,很容易融入现有项目,使现有项目拥有Web网站功能和WebSocket,以及Socket直连! 并且包含了一个跨平台(windows/linux)工具集合; 嗯,也挺棒的^,^ 在项目中 ...

  7. Java 8五大主要功能为开发者提供了哪些便利?

    两年前当Java 8发布后,立即受到了业界的欢迎,因为它大大提高了Java的性能.它独特的卖点是,顾及了编程语言的每一个方面,包括JVM(Java虚拟机)和编译器,并且改良了其它帮助系统. Java是 ...

  8. Vue + Webpack + Vue-loader 系列教程(1)功能介绍篇

    原文地址:https://lvyongbo.gitbooks.io/vue-loader/content/ Vue-loader 是什么? vue-loader 是一个加载器,能把如下格式的 Vue ...

  9. .Net Core MVC 网站开发(Ninesky) 2.2、栏目管理功能-System区域添加

    在asp或asp.net中为了方便网站的结构清晰,通常把具有类似功能的页面放到一个文件夹中,用户管理功能都放在Admin文件夹下,用户功能都放在Member文件夹下,在MVC中,通常使用区域(Area ...

随机推荐

  1. OpenGL的几何变换3之内观察全景图

    继续上一篇文章的例子:OpenGL的几何变换2之内观察立方体 上一篇是通过绘图方式得到的立方体,没有贴图,这次加上纹理贴图. 通过纹理贴图有两种方案: 1.图片分割化,即是把一张完整的全景图片(就是支 ...

  2. ubuntu sudo apt-get update 失败 解决方法

    sudo apt-get update 报了一堆错误: Err http://cn.archive.ubuntu.com trusty InRelease Err http://cn.archive. ...

  3. OpenCV3编程入门笔记(2)计时函数、感兴趣区域RIO、分离/混合通道

    11     绘制直线的line函数 DrawLine(Mat img, Pont start, Point end); 绘制椭圆的ellipse函数 DrawEllipse(Mat img, dou ...

  4. 联想G480笔记本安装系统

    联想G480笔记本安装系统 联想G480笔记本,配置i5双核四线程处理器,4G内存,500G硬盘,USB3.0接口,NVIDIA GeForce GT 610M+Intel HD Graphics 3 ...

  5. html+asp.net上传文件

    type="file" 的name以及id一定要写,并且名字相同 http://niunan.iteye.com/blog/479605 <form id="for ...

  6. 一个最简html5文档来说明html5的新特性和写法

    <!DOCTYPE html> <html lang="zh"> <head> <meta charset="utf-8&quo ...

  7. 【CodeForces 651B】Beautiful Paintings 排序+贪心

    题目大意: 给定集合,对于任意一个的排列,记,求. 很明显每次搞出一个长度为的最长上升序列,然后把元素给删掉,答案增加. 直接暴力需要. 但是可以进行优化. 设有个,将个数从小到大排序,记为长度为的数 ...

  8. node.js关于传送数据的二三事

    配置好node环境后 书写代码 目录结构: . 代码: <!DOCTYPE html> <html lang="en"> <head> < ...

  9. jq slideUp slideDown

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  10. parent,parents和closest

    1.parent parent() 获得当前匹配元素集合中每个元素的父元素,使用选择器进行筛选是可选的. <ul id="menu" style="width:10 ...