IO文件中,一些对目录进行操作的函数:获取、切分、组合

一些对目录进行操作的函数:
获取用户的姓名:(NSString*)NSUserName() ;    ———>NSString *Str = NSUserName()
获取home目录路径:(NSString*)NSHomeDirectory()
获取临时文件夹路径:(NSString*)NSTemporaryDirectory()
 
一些对目录进行操作的方法:
将路径切成部分:- (NSArray *)pathComponents  ———>NSArray *paths = [path pathComponents]
将部分组合成路径:+ (NSString *)pathWithComponents:(NSArray *)components
判断是不是绝对路径:- (BOOL)isAbsolutePath
获取路径最后一部分:- (NSString *)lastPathComponent
删除最后一部分:- (NSString *)stringByDeletingLastPathComponent
获取扩展名:- (NSString *)pathExtension
删除扩展名:- (NSString *)stringByDeletingPathExtension
添加路径:- (NSString *)stringByAppendingPathComponent:(NSString *)str
添加扩展名:- (NSString *)stringByAppendingPathExtension:(NSString *)str

//1、获取home目录的路径

         NSString *homeDir = NSHomeDirectory();
NSLog(@"home:%@",homeDir);
-- ::28.727 -path[:] home:/Users/mac

//2、获取临时文件夹的路径

         NSString *tempDir = NSTemporaryDirectory();
NSLog(@"home:%@",tempDir);
-- ::28.728 -path[:] home:/var/folders/dx/481d4y4j4430hfty5zr_1gfh0000gn/T/

//3、将路径分成部分

         NSArray *paths = [tempDir pathComponents];
NSLog(@"%@",paths);
-- ::28.728 -path[:] (
"/",
var,
folders,
dx,
"481d4y4j4430hfty5zr_1gfh0000gn",
T,
"/"
)

//4、将部分再拼成路径

         NSString *path = [NSString pathWithComponents:paths];
NSLog(@"%@",path);
-- ::28.729 -path[:] /var/folders/dx/481d4y4j4430hfty5zr_1gfh0000gn/T

//5、在路径上添加文件

         NSString *fileNamePath = [path stringByAppendingPathComponent:@"1.txt"];
NSLog(@"fileName:%@",fileNamePath);
-- ::28.729 -path[:] fileName:/var/folders/dx/481d4y4j4430hfty5zr_1gfh0000gn/T/.txt

//6、获取路径的最后一部分

         NSString *fileName = [fileNamePath lastPathComponent];
NSLog(@"fileName:%@",fileName);
-- ::28.729 -path[:] fileName:.txt

//7、获取文件的扩展名

         NSString *extension = [fileNamePath pathExtension];
NSLog(@"extension:%@",extension);
-- ::28.729 -path[:] extension:txt
Program ended with exit code:

Objective-C:Objective-C:文件中一些对目录进行操作的函数的更多相关文章

  1. MATLAB 在同一个m文件中写多个独立的功能函数

    MATLAB 在同一个m文件中写多个独立的功能函数,从而实现在外部可以直接调用这个文件中的某一个函数. 鉴于MATLAB的函数文件的函数名与文件名要一样,就需要有一个统一的接口来涵盖这些功能函数. 例 ...

  2. C语言中关于对目录的操作

    原文地址:C语言中关于对目录的操作 目录的操作不论是在嵌入式产品还是应用软件编程都是必不可少的,不同的开发语言可能略有不同,笔者主要是讨论在Linux平台下对目录的一系列操作: 1.获取当前目录操作: ...

  3. [Java] 在 jar 文件中读取 resources 目录下的文件

    注意两点: 1. 将资源目录添加到 build path,确保该目录下的文件被拷贝到 jar 文件中. 2. jar 内部的东西,可以当作 stream 来读取,但不应该当作 file 来读取. 例子 ...

  4. path类和directory类对文件的路径或目录进行操作

    Path: 对文件或目录的路径进行操作(很方便)[只是对字符串的操作] 1.目录和文件操作的命名控件System.IO    2.string Path.ChangeExtension(string ...

  5. FindResource函数错误代码:1813-找不到映像文件中指定的资源类型 与LoadResource函数错误代码:1812-指定的映像文件不包含资源区域

    HRSRC WINAPI FindResource( _In_opt_  HMODULE hModule, _In_      LPCTSTR lpName, _In_      LPCTSTR lp ...

  6. js中三个对数组操作的函数 indexOf()方法 filter筛选 forEach遍历 map遍历

     indexOf()方法  indexOf()方法返回在该数组中第一个找到的元素位置,如果它不存在则返回-1. 不使用indexOf时 var arr = ['apple','orange','pea ...

  7. Python中OS对目录的操作以及引用

    路径的获取 对当前目录的获取 1 path = os.getcwd() 2 print("获取到的当前目录是:({})".format(path)) 获取当前文件所在的绝对路径 i ...

  8. Objective-C声明在头文件和实现文件中的区别

    Objective-C声明在头文件和实现文件中的区别 转自codecloud(有整理) 调试程序的时候,突然想到这个问题,百度一下发现有不少这方面的问答,粗略总结一下: 属性写在.h文件中和在.m文件 ...

  9. 为什么模板函数的声明和实现都放在.h文件中

    当你不使用这个模板函数或模板类,编译器并不实例化它,当你使用时,编译器需要实例化它,因为编译器是一次只能处理一个编译单元,也就是一次处理一个cpp文件,所以实例化时需要看到该模板的完整定义.所以都放在 ...

随机推荐

  1. 006 ajax验证用户名

    1.大纲 2.index.jsp <%@ page language="java" contentType="text/html; charset=UTF-8&qu ...

  2. ES6-const注意

    注意要点 const 如何做到变量在声明初始化之后不允许改变的?其实 const 其实保证的不是变量的值不变,而是保证变量指向的内存地址所保存的数据不允许改动.此时,你可能已经想到,简单类型和复合类型 ...

  3. 统计无向图中三角形的个数,复杂度m*sqrt(m).

    统计无向图中三角形的个数,复杂度m*sqrt(m). #include<stdio.h> #include<vector> #include<set> #inclu ...

  4. [ 转载 ] Java基础11--Java总结篇系列:Java泛型

    一. 泛型概念的提出(为什么需要泛型)? 首先,我们看下下面这段简短的代码: 1 public class GenericTest { 2 3 public static void main(Stri ...

  5. python opencv3 获取摄像头视频

    git:https://github.com/linyi0604/Computer-Vision # coding:utf8 import cv2 """ 捕获摄像头10 ...

  6. 2017-2018-1 20162307 Dijkstra算法

    2017-2018-1 20162307 Dijkstra算法 题目要求 Dijkstra算法,求解附图顶点A的单源最短路径 在纸上画出求解过程,上传截图(注意图上要有自己的学号和姓名) 解题步骤

  7. [BJOI2010]次小生成树

    OJ题号: BZOJ1977.COGS2453 题目大意: 给你一个无向连通图,求严格次小生成树. 思路: 对于一般次小生成树,我们有一个结论:一般次小生成树一定可以通过替换掉最小生成树某一条边得到. ...

  8. 【BZOJ】4260: Codechef REBXOR【Trie树】【前后缀异或最大】

    4260: Codechef REBXOR Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 2218  Solved: 962[Submit][Stat ...

  9. 【2017多校训练08 1002】【HDOJ 6134】Battlestation Operational

    典型的数列反演题. 运用莫比乌斯反演的一个结论 $[n = 1] = \sum_{d | n} \mu(d)$,将表达式做如下转化: $$ ans = \sum_{i=1}^n \sum_{j=1}^ ...

  10. Codeforces Round #352 (Div. 1) A. Recycling Bottles 暴力

    A. Recycling Bottles 题目连接: http://www.codeforces.com/contest/671/problem/A Description It was recycl ...