下面是官方的说明:

源字符串

 
--->    
结果字符串
“/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. jquery定位

    1.$("div").offset().left ; div到文档的左距离(offset() 方法返回或设置匹配元素相对于文档的偏移) $("div").off ...

  2. js知识点 知识树 知识结构 (转载 学习中)

  3. ionic 原生日历控件不支持,改用 datepicker-for-ionic

    具体参考地址 http://npm.taobao.org/package/datepicker-for-ionic

  4. 如何连接git bash和git hub

    git config --global user.name "Your Real Name" 2 git config --global user.email you@email. ...

  5. phalcon: 上下文转义

    phalcon: 上下文转义 Phalcon\Escaper 转义特殊的字符 一:字符转义 $maliciousTitle = '</title><script>alert(1 ...

  6. SCCM日志存放路径

    sccm有一些比较重要的日志大家可能经常需要查看.下面是一些比较常用的日志文件的存放位置. 客户端日志文件: 日志位于服务器端 SMS_CCM\Logs 文件夹中 日志位于客户端 %Windir%\S ...

  7. Unity3D WebCamTexture 调用外部摄像头

    http://www.itnose.net/detail/6259004.html 一:Unity 中使用WebCamTexture 调用摄像头实现拍照和摄像. using UnityEngine; ...

  8. data structure

    转载请注明出处: 我所遇见的世界会更美好 我曾经逢人就说总是遇到这样那样错误无法解决,但是这些问题只要静下心来仔细思考根本没有解决不了的问题. 其实明明,超级超级简单,然而被老师讲的天花乱坠, 栈: ...

  9. ajax轮询session阻塞问题

    近来读了几篇关于ASP.NET下Session机制的文章,结合自己的实际应用,有点感想:        在ASP.NET的Session的默认机制下,对同一个SessionID下的用户请求ASP.NE ...

  10. 网络与RPC

    网络与RPC 标签 : Java基础 Java为网络编程提供的java.net包封装了底层通信细节, 包含了大量的基础组件以及TCP/UDP协议的编程接口, 使得开发者可以专注于解决问题, 而不用关注 ...