ios 获取沙盒文件名_IOS获取各种文件目录路径的方法
iphone沙箱模型有四个文件夹,分别是什么,永久数据存储一般放在什么位置,得到模拟器的路径的简单方式是什么.
documents,tmp,app,Library。
(NSHomeDirectory()),
手动保存的文件在documents文件里
Nsuserdefaults保存的文件在tmp文件夹里
1、Documents 目录:您应该将所有de应用程序数据文件写入到这个目录下。这个目录用于存储用户数据或其它应该定期备份的信息。
2、AppName.app 目录:这是应用程序的程序包目录,包含应用程序的本身。由于应用程序必须经过签名,所以您在运行时不能对这个目录中的内容进行修改,否则可能会使应用程序无法启动。
3、Library 目录:这个目录下有两个子目录:Caches 和 Preferences
Preferences 目录:包含应用程序的偏好设置文件。您不应该直接创建偏好设置文件,而是应该使用NSUserDefaults类来取得和设置应用程序的偏好.
Caches 目录:用于存放应用程序专用的支持文件,保存应用程序再次启动过程中需要的信息。
4、tmp 目录:这个目录用于存放临时文件,保存应用程序再次启动过程中不需要的信息。
获取这些目录路径的方法:
第一种方式:获取家目录路径的函数:
NSString *homeDir = NSHomeDirectory();
第二种方式:获取Documents目录路径的方法:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docDir = [paths objectAtIndex:0];
第三种方式:获取Caches目录路径的方法:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
NSString *cachesDir = [paths objectAtIndex:0];
第四种方式:获取tmp目录路径的方法:
NSString *tmpDir = NSTemporaryDirectory();
第五种方式:获取应用程序程序包中资源文件路径的方法:
例如获取程序包中一个图片资源(apple.png)路径的方法:
NSString *imagePath = [[NSBundle mainBundle] pathForResource:@”apple” ofType:@”png”];
UIImage *appleImage = [[UIImage alloc] initWithContentsOfFile:imagePath];
代码中的mainBundle类方法用于返回一个代表应用程序包的对象。
iphone沙盒(sandbox)中的几个目录获取方式:
// 获取沙盒主目录路径
NSString *homeDir = NSHomeDirectory();
// 获取Documents目录路径
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docDir = [paths objectAtIndex:0];
// 获取Caches目录路径
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
NSString *cachesDir = [paths objectAtIndex:0];
// 获取tmp目录路径
NSString *tmpDir = NSTemporaryDirectory();
// 获取当前程序包中一个图片资源(apple.png)路径
NSString *imagePath = [[NSBundle mainBundle] pathForResource:@"apple" ofType:@"png"];
UIImage *appleImage = [[UIImage alloc] initWithContentsOfFile:imagePath];
例子:
NSFileManager* fm=[NSFileManager defaultManager];
if(![fm fileExistsAtPath:[self dataFilePath]]){
//下面是对该文件进行制定路径的保存
[fm createDirectoryAtPath:[self dataFilePath] withIntermediateDirectories:YES attributes:nil error:nil];
//取得一个目录下得所有文件名
NSArray *files = [fm subpathsAtPath: [self dataFilePath] ];
//读取某个文件
NSData *data = [fm contentsAtPath:[self dataFilePath]];
//或者
NSData *data = [NSData dataWithContentOfPath:[self dataFilePath]];
}
ios获取文件路径的方法有多种,下面介绍一种IOS中获取文件路径比较简单方法。
网上的DOCUMNET和“教程”真让人越看越糊涂,还是自己记下吧。
首先把文件(比如本例中的testFile.txt文件)放置在resources分组下,然后代码这样写:
NSString *filePath = [[NSBundle mainBundle] pathForResource:@"testFile" ofType:@"txt"];
NSLog(@"data path: %@", filePath);
输出的日志中你可以看到testFile.txt的路径已经获得。
再举一个例子:连接SQLITE数据库
NSString *dataPath = [[NSBundle mainBundle] pathForResource:@"myData" ofType:@"sqlite"];
if (sqlite3_open([dataPath UTF8String], &db) != SQLITE_OK)
{
sqlite3_close(db);
NSLog(@"数据库打开失败");
}
else
{
NSLog(@"数据库成功打开");
}
以上内容是IOS获取各种文件目录路径的方法,希望对大家有所帮助。
ios 获取沙盒文件名_IOS获取各种文件目录路径的方法相关推荐
- ios 获取沙盒文件名_iOS沙盒机制
沙盒机制每个应用都有自己独立的存储空间 应用不能翻过围墙去访问别的存储空间 应用请求的数据都要进行权限检查,如果不符合,就不会被放行 ios app只能在自己的沙盒目录下读取文件,在沙盒中,bundl ...
- ios 获取沙盒文件名_获取IOS各种沙盒路径的方法
在下初学IOS编程,有很多不懂以及不了解的地方,本着分享的精神,将自己学到用到的一些东西写出来,如果有不正确的地方,希望大家指正. 本次讲解的是IOS下各个文件夹的相关知识. 首先,我们应该知道,在I ...
- ios 获取沙盒文件名_iOS怎么获取并移除沙盒中Documents文件夹下的所有文件
匿名用户 1级 2016-09-15 回答 1.将所有文件存入数组 NSString *string = [NSSearchPathForDirectoriesInDomains(NSDocument ...
- ios 获取沙盒文件名_iOS_沙盒(sandbox)机制及获取沙盒路径和文件操作(NSFileManager)...
⚠️版权声明:本文为博主原创文章,转载必须标明原文出处. 一. 每个iOS应用SDK都被限制在"沙盒"中,"沙盒"相当于一个加了仅主人可见权限的文件夹,苹果对 ...
- iOS文件(沙盒目录,文件创建、移动、复制等)
目录获取 获取沙盒的主目录路径: + (NSString *)homeDir {return NSHomeDirectory(); } 复制代码 获取沙盒中Documents的目录路径: + (NSS ...
- ios 获取沙河文件夹_iOS开发之获取沙盒路径
iOS开发之沙盒机制(SandBox)详细讲解了沙盒的一些机制.在开发中,我们需要对沙盒进行操作,所以我们需要获取到沙盒路径. 沙盒里的文件夹包括Documents.Library.tmp.这三个文件 ...
- iOS开发10-iOS SandBox(沙盒或沙盘)介绍、路径获取
iOS开发10-iOS SandBox(沙盒或沙盘)介绍.路径获取 代码下载(Xcode7.0.1) 有问题请联系博主,邮箱:nathanlee1987@aliyun.com 1.沙盒路径的获取 & ...
- ios 模拟器沙盒_ios沙盒,真机模拟器查看沙盒内容
一.沙盒文件结构 --Documents ------ 可以和iTunes共享,可以同步的 --Library ------ 不共享给用户,存储用户默认设置和缓存等 --Caches ------ 存 ...
- 获取 一个文件 在沙盒Library/Caches/ 目录下的路径
+ (NSString *)getFullPathWithFile:(NSString *)urlName { //先获取 沙盒中的Library/Caches/路径 NSS ...
最新文章
- docker-compose编排最佳实战(多服务)
- optee内核中malloc函数的原理介绍
- spring项目属性注入和bean管理xml 注入一般属性和集合属性
- redis和kafka读取代码
- zookeeper的设计猜想-Leader角色
- qq群发信息显示服务器检测到,关于如何突破QQ群发消息屏蔽或限制经验总结
- Apache的流处理技术概述
- clock()函数的使用
- 关于Jbulder2006的问题
- SharePoint Online 自定义Modern UI表单
- 详细领略Java的输入流和输出流
- 使用excel导入功能时日期数据变成数字的解决
- 调用Python的PyAutoGUI模块模拟登录QQ邮箱
- DUC HDC 笔记
- Excel处理 中文转拼音缩写
- TransUnet官方代码训练自己数据集(彩色RGB3通道图像的分割)
- 动手学深度学习第一次打卡
- Python对Excel的常规操作 之 读取带密码的文件,解除Sheet密码
- Zookeeper整合JAVA应用之Curator开源客户端使用案例
- (详解)opencv里的cv2.resize改变图片大小Python
热门文章
- 隔离见证_云见证–一种使我们的生活更轻松的新功能
- python学习笔记(11)--测验3: Python基础语法(下) (第7周)
- AngularJS-webapp($q)
- 大话设计模式C++版——代理模式
- Empire C:Basic 4
- nvl,空时的推断和取值
- OpenCV 离散傅里叶变换
- Roundcube Webmail跨站脚本漏洞(CVE-2015-5381 )
- 输入框中提示信息(html5)
- 计算机网络学习笔记--网络层知识点整理