`

NSSearchPathForDirectoriesInDomains和NSHomeDirectory差异 转

    博客分类:
  • ios
 
阅读更多
iPhone会为每一个应用程序生成一个私有目录,这个目录位于:
/Users/sundfsun2009/Library/Application Support/iPhone Simulator/User/Applications下,
并随即生成一个数字字母串作为目录名,在每一次应用程序启动时,这个字母数字串都是不同于上一次。

所以通常使用Documents目录进行数据持久化的保存,而这个Documents目录可以通过:
NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserdomainMask,YES) 得到。
代码如下:
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSLog(@"path:   %@",path);
    打印结果如下:
    path:   /Users/apple/Library/Application Support/iPhone Simulator/4.3/Applications/550AF26D-174B-42E6-881B-B7499FAA32B7/Documents
   
而通过 NSHomeDirectory()也可以得到程序的目录,代码如下:
    NSString *destPath = NSHomeDirectory();
    NSLog(@"path:   %@",destPath);
    打印结果如下:
    path:   /Users/apple/Library/Application Support/iPhone Simulator/4.3/Applications/550AF26D-174B-42E6-881B-B7499FAA32B7
    看看两者打印出来的结果,我们可以看出这两种方法的不同。
分享到:
评论

相关推荐

    AppFolder::card_index_dividers:不再使用NSSearchPathForDirectoriesInDomains。 决不

    所有系统目录(例如“ Caches /”和“ Application Support /”)都已经存在,您只需使用几行代码即可添加您的目录。 AppFolder有一个简单漂亮的界面,借助Swift的黑魔法可以实现:继承 :face_screaming_in_fear: ...

    iOS沙盒总结

    NSString *path = NSHomeDirectory(); NSLog(@"path:%@",path); 打印结果: path:/Users/username/Library/Application Support/iPhone Simulator/5.1/Applications/BAE91297-A4C6-4DDC-A9DA-7B790B36CE7A 真机...

    ios WKWebView 的使用和交互

    本demo是WKWebView的基本使用和交互 ,实现了原生调用js的方法、js调用原生的方法、通过拦截进行交互的方法;修改内容 加入沙盒 / /加载沙盒 不带参数 // NSArray * paths = NSSearchPathForDirectoriesInDomains...

    IOS中计算缓存文件的大小判断实例详解

    IOS中计算缓存文件的大小判断,在这里分享一下自己的心得,希望和大家一起分享技术,如果有什么不足,还请大家指正。写出这篇目的,就是希望大家一起成长,我也相信技术之间没有高低,只有互补,只有分享,才能使...

    沙盒路径获取以及图片保存到相簿的方法

    NSString *homeDir = NSHomeDirectory(); // 获取Documents目录路径 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *docDir = [paths ...

    IOS 开发之数据存储writeToFile的应用实例

    NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask,YES);//使用C函数NSSearchPathForDirectoriesInDomains来获得沙盒中目录的全路径。该函数有三个参数,目录...

    IOS文件的简单读写实例详解

    数组(可变与不可变)和字典(可变与不可变)中元素对象的类型,必须是NSString,NSArray,NSDictionary,NSData,否则不能直接写入文件 #pragma mark---NSString的写入与读取--- //1:获取路径 NSString *docunments = ...

    DownLoad 下载练习

    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *path = [paths lastObject]; path = [path stringByAppendingFormat:@"%@\aa", path]; NSLog...

    IOS获取缓存文件的大小并清除缓存文件的方法

    移动应用在处理网络资源时,一般都会做离线缓存处理,其中以图片缓存最为典型,其中很流行的离线...NSString *cachePath = [NSSearchPathForDirectoriesInDomains (NSCachesDirectory , NSUserDomainMask , YES) firstO

    iOS 生成plist文件,在项目中代码创建plist的实例

    plist和preference不支持自定义模型的存储 整理代码创建plist文件的方法: #pragma mark - 创建plist文件 -(void)creatPlistFileWithArr:(NSArray *)array{ //将字典保存到document文件->获取appdocument路径 ...

    Objective-C封装字符串存储操作示例

    /存储publickey和sessionID — writeContent: nil - 仅取出数据, 其他 - 修改原内容并提取+(NSString *)storeFile:(NSString *)fileName content:(NSString *)writeContent{ NSString *pathDocuments=...

    iOS中控制NSLog输出时机详解

    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentDirectory = [paths objectAtIndex:0]; NSDateFormatter *dateFormatter = [...

    iOS 对plist文件进行读写,增删改查的实例

    NSArray *pathArray = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *path = [pathArray objectAtIndex:0]; //获取文件的完整路径 NSString *filePatch = [path...

    iOS清除所有缓存的实例代码

    NSString *libPath = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES)[0]; CGFloat fileSize=[self folderSizeAtPath:libPath]; - (float ) folderSizeAtPath:(NSString*) ...

    IOS 文件读写操作详解及简单实例

    iPhone 文件读写操作 1,写文件操作 - (IBAction)btnWrite:(id... NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentDirectory = [paths obj

    数据库(FMDB)-城市数据的缓存

    NSString *doc = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject]; NSLog(@sql路径===%@,doc); NSString *fileName = [doc stringByAppendingPathComponent:@...

    SQLiteQueryUtil:一组块函数,用于在 Objective-c 中包装 iOS 上的常见 SQLite 操作

    NSArray *dirPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *docsDir = [dirPaths objectAtIndex:0]; NSString *databasePath = [[docsDir ...

    DownloadManager:Swift 中的下载管理器

    然后,就这么简单: class Dummy : DownloadManagerDelegate { init () { let downloadDirectory = let documentsDirectory = ( NSSearchPathForDirectoriesInDomains (. DocumentDirectory , . UserDomainMask , ...

Global site tag (gtag.js) - Google Analytics