路径工具类NSPathUtilities

路径工具类NSPathUtilities.h  

路径类NSPathUtilities.h包含了
NSString的函数和分类扩展,他允许你操作路径名。
应该竟可能的使用这些函数,以便使程序更独立于文件系统结构及特定文件和目录的位置

NSPathUtilities.h常用的方法
+(NSString*)pathWithComponents:components
根据components中得元素构造有效路径
-(NSArray*)pathComponents
析构路径,获得组成此路径的各个部分

-(NSString*)lastPathComponent
提取路径的最后一个组成部分

-(NSString*)pathExtension
从路径的最后一个组成部分中提取其扩展名

-(NSString*)stringByAppendingPathComponent:path
将path添加到现有路径的末尾

-(NSString*)stringByDeletingLastPathComponent
删除路径的最后一个组成部分

-(NSString*)stringByDeletingPathExtension
从文件的最后一部分删除扩展名

-(NSString*)stringByExpandingTildeInPath
将路径中得代字符扩展成用户主目录(~)或指定用户的主目录(~user)

-(NSString*)stringByResolvingSymlinksInPath
尝试解析路径中的符号链接

-(NSString*)stringbyStandardizingPath 通过尝试解析~、..、.、和符号链接来标准化路径

系统路径函数

NSString *NSUserName(void) 返回当前用户的登录名

NSString
*NSFullUserName(void) 返回当前用户的完整用户名

NSString *NSHomeDirectory(void)
返回当前用户主目录的路径

NSString *NSHomeDirectoryForUser(NSString *user)
返回用户user的主目录

NSString *NSTemporaryDirectory(void)
返回可用于创建零时文件的路径目录

1、程序实例:

[objc] view plaincopyprint?

  1. //

  2. //  main.m

  3. //  NSPathUtilities.h

  4. //

  5. //  Created by swinglife on 13-11-13.

  6. //  Copyright (c) 2013年 swinglife. All rights reserved.

  7. //
  8. #import <Foundation/Foundation.h>
  9. int main(int argc, const charchar * argv[])

  10. {
  11. @autoreleasepool {

  12. NSString *fileName = @"testPath.java";

  13. NSString *path,*tempdir,*extension,*homedir,*fullpath;

  14. NSArray *components;
  15. NSFileManager *fm = [NSFileManager defaultManager];
  16. //获取临时的工作目录

  17. tempdir = NSTemporaryDirectory();

  18. NSLog(@"临时工作目录:%@",tempdir);
  19. //从当前目录中提取基本目录

  20. path = [fm currentDirectoryPath];

  21. NSLog(@"基础目录:%@",[path lastPathComponent]);
  22. //创建文件fileName在当前目录中得完整路径

  23. fullpath = [path stringByAppendingPathComponent:fileName];

  24. NSLog(@"%@完整路径:%@",fileName,fullpath);
  25. //获取文件扩展名

  26. extension = [fullpath pathExtension];

  27. NSLog(@"文件%@的扩展名是%@",fullpath,extension);
  28. //获取用户的主目录

  29. homedir = NSHomeDirectory();

  30. NSLog(@"用户主目录:%@",homedir);
  31. //拆分路径为各组成部分

  32. components = [homedir pathComponents];

  33. for (path in components) {

  34. NSLog(@"%@",path);

  35. }
  36. }

  37. return 0;

  38. }

Foundation函数NSSearchPathForDirectoriesInDomains它可用于查找系统的特殊目录

,如Application和Documents目录。列如:定义一个方法saveFilePath,
它返回文件saveFile在
Documents目录中的路径。这个方法可以用于应用里保存一些数据到文件中

-(NSString*)saveFilePath{
NSArray
*dirList =
NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSuserDomainMask,YES);
NSString
*docDir = [dirList objectAtIndex:0];
return [docDir
stringByAppendingPathComponent:@"saveFile"];
}

当为ios编写程序时,NSSearchPathForDirectoriesInDomains函数的第二个参数应该是NSuserDomainMask并希望得到一个包含单个路径的数组作为返回

IOS常用目录:
Documents(NSDocumentDirectory)
用于写入应用相关数据文件的目录。在IOS中写入这里的文件能够与Itunes共享并访问,存储在这里的文件会自动备份到云端。

Library/Caches(NSCachesDirectory)
用于写入应用支持文件的目录,保存应用程序再次启动需要的信息,iTunes不会对这个目录的内容进行备份.

tmp(use
NSTemporaryDirectory())
这个目录用于存放零时文件,在程序终止时需要移除这些文件,当应用程序不再需要这些零时文件是,应该将其从这个目录中删除

Library/Preferences
这个目录包含应用程序的偏好设置文件,使用NSUserDefaults类进行偏好设置文件的创建、读取、和修改。

时间: 2024-10-06 18:42:52

路径工具类NSPathUtilities的相关文章

javascript 绝对路径工具类

// #region 取虚拟目录示例代码 //获取网站虚拟目录名称 function GetVirtualDirectoryName() { var pathname = removeFirstSlash(location.pathname); var pos = pathname.indexOf('/'); return pathname.substr(0, pos); } //获取网站标头 function GetHeader() { var host = removeFirstLastSl

JDK中工具类的使用

JDK中内置了很多常用的工具类,且多以“s”结尾,如:集合工具类Collections,数组工具类Arrays,对象工具类Objects,文件工具类Files,路径工具类Paths,数学工具类Maths:但也有一些不是以“s”结尾的工具类,如TimeUnit和System. 下面就简单介绍各工具类的用法.(1)Objects中定义很多有用的API,如空指针判断,对象相等比较等.比较常用的API有以下几个: ? 用于判断两个对象是否相等,两个参数都可以为null ? public static b

Android 常用工具类之SPUtil,可以修改默认sp文件的路径

参考: 1. 利用Java反射机制改变SharedPreferences存储路径    Singleton1900 2. Android快速开发系列 10个常用工具类 Hongyang import android.app.Activity; import android.content.Context; import android.content.ContextWrapper; import android.content.SharedPreferences; import java.io.

【24】框架第三方类库与工具类存放路径定义

为了丰富我们的框架,我们需要为框架引入一些好用的工具类,比如:phpexcel.phpmailer.验证码类.... 1.在框架根目录下面手动创建目录Extends,并在该目录先创建Tool和Org目录,分别用来存放工具类和第三方扩展类: Extends //第三方类库目录 Extends/Tool //工具类 Extends/Org //第三方扩展 2.在框架入口文件JHPHP.php中定义三个常量用来保存上面三个文件夹的路径: //定义扩展文件目录 define('EXTENDS_PATH'

NSPathUtilities.h常用路径工具、函数和方法

分类: 网络安全/ 工具使用/ 文章 常用路径工具函数 NSString * NSUserName(void) 返回当前用户的登录名 NSString * NSFullUserName(void) 返回当前用户的完整用户名 NSString * NSHomeDirectory(void) 返回当前用户主目录的路径 NSString * NSHomeDirectoryForUser(NSString *user) 返回用户user的主目录 NSString * NSTemporaryDirecto

常用工具类(System,Runtime,Date,Calendar,Math)

一.Sy 一个java.lang包中的静态工具类. 三大字段: static PrintStream err "标准"错误输出流. static InputStream in "标准"输入流. static PrintStream out "标准"输出流. 其他常用方法: 描述系统信息: 获取系统属性信息: static Properties getProperties(): (Properties是Hashtable的子类,也就是Map 的子类

工具类

遍历提交表单取值 1 package com.project.util; 2 3 import java.lang.reflect.Field; 4 import java.sql.Date; 5 import java.util.Enumeration; 6 import javax.servlet.http.HttpServletRequest; 7 8 public class FullBean { 9 public void fullBean(HttpServletRequest req

Android开发常用工具类

来源于http://www.open-open.com/lib/view/open1416535785398.html 主要介绍总结的Android开发中常用的工具类,大部分同样适用于Java. 目前包括  HttpUtils.DownloadManagerPro.Safe.ijiami.ShellUtils.PackageUtils. PreferencesUtils.JSONUtils.FileUtils.ResourceUtils.StringUtils. ParcelUtils.Rand

ThinkPHP Http工具类(用于远程采集 远程下载) phpSimpleHtmlDom采集类库_Jquery筛选方式 使用phpQuery轻松采集网页内容

[php]代码库 view sourceprint? <?php // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK IT ] // +---------------------------------------------------------------------- // | Copyright (c) 200