路径字符串与文件字符串扩展名判断

一,判断路径

1,判断是否是绝对路径

        //原理:判断字符串首字符是否为“/”
        NSString *str = @"/User/mengAmber/Desktop/mll.txt";
        BOOL isPath = [str isAbsolutePath];
        NSLog(@"isPath  = %i", isPath);

-----------
print: isPath  = 1

2,获取文件路径的最后一个目录

        //原理:截取字符串最后一个“/”及“/”后面的内容
        NSString *str = @"/User/mengAmber/Desktop/mll.txt";
        NSString *newStr = [str lastPathComponent];
        NSLog(@"newStr: %@", newStr);

-----------
print: newStr: mll.txt

3,删除文件最后一个子目录

        //原理:删除字符串最后一个“/”及之后部分
        NSString *str = @"/User/mengAmber/Desktop/mll.txt";
        NSString *newStr = [str stringByDeletingLastPathComponent];
        NSLog(@"newStr: %@", newStr);

-----------
print: newStr: /User/mengAmber/Desktop

4,给路径字符串添加子目录

        //原理:从字符串最后开发添加路径,
        //注:如果字符串最后包含"/",则系统添加路径时不会再添加"/",如果不包含"/"系统则会自动添加,如果包含多个"/"系统会合并为一个"/"
        NSString *str = @"/User/mengAmber/Desktop";
        NSString *newStr = [str stringByAppendingPathComponent:@"abc"];
        NSLog(@"newStr: %@", newStr);

-----------
print: newStr: /User/mengAmber/Desktop/abc

二,判断扩展名

1,获取文件字符串的扩展名

        //原理:从字符串最后一个“.”截取字符串“.”不包括.
        NSString *str = @"/User/mengAmber/Desktop/mll.pdf";
        NSString *newStr = [str pathExtension];
        NSLog(@"扩展名: %@", newStr);

-----------
print: 扩展名: pdf

2,删除路径文件字符串扩展名

        //原理:删除字符串最后一个“.”之后的内容,包括最后一个“.”
        NSString *str = @"/User/mengAmber/Desktop/mll.txt";
        NSString *newStr = [str stringByDeletingPathExtension];
        NSLog(@"newStr: %@", newStr);

-----------
print: newStr: /User/mengAmber/Desktop/mll

3,给路径文件添加扩展名

       //原理:在字符串的末尾添加一个"."和指定内容
       NSString *str = @"/User/mengAmber/Desktop/mll";
       NSString *newStr = [str stringByAppendingPathExtension:@"jpg"];
       NSLog(@"newStr: %@", newStr);

-----------
print: newStr: /User/mengAmber/Desktop/mll.jpg
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 99,473评论 9 467
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,841评论 18 139
  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 12,203评论 2 33
  • 作者:(德)黑格尔 出版:北京出版社 ISBN:9787200073126 《历史哲学》是黑格尔的代表作。全书分为...
    无言空间阅读 1,267评论 0 0
  • Tracy是我多年的朋友,和她相识源于一次朋友介绍,恰好是同小区的住户,于是和她走的慢慢近起来,相约逛街吃饭看电...
    爱唱歌的苏菲亚阅读 201评论 0 0