ios中获取各种文件的目录路径方法

http://blog.csdn.net/enuola/article/details/8076221

iphone沙箱模型的有四个文件夹,分别是什么,永久数据存储一般放在什么位置,得到模拟器的路径的简单方式是什么.

documents,tmp,app,Library。

(NSHomeDirectory()),

手动保存的文件在documents文件里

Nsuserdefaults保存的文件在tmp文件夹里

1、Documents 目录:您应该将所有de应用程序数据文件写入到这个目录下。这个目录用于存储用户数据或其它应该定期备份的信息。

2、AppName.app 目录:这是应用程序的程序包目录,包含应用程序的本身。由于应用程序必须经过签名,所以您在运行时不能对这个目录中的内容进行修改,否则可能会使应用程序无法启动。

3、Library 目录:这个目录下有两个子目录:Caches 和 Preferences
Preferences 目录:包含应用程序的偏好设置文件。您不应该直接创建偏好设置文件,而是应该使用NSUserDefaults类来取得和设置应用程序的偏好.
Caches 目录:用于存放应用程序专用的支持文件,保存应用程序再次启动过程中需要的信息。

4、tmp 目录:这个目录用于存放临时文件,保存应用程序再次启动过程中不需要的信息。

获取这些目录路径的方法:
1,获取家目录路径的函数:
NSString *homeDir = NSHomeDirectory();
2,获取Documents目录路径的方法:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docDir = [paths objectAtIndex:0];
3,获取Caches目录路径的方法:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
NSString *cachesDir = [paths objectAtIndex:0];
4,获取tmp目录路径的方法:
NSString *tmpDir = NSTemporaryDirectory();
5,获取应用程序程序包中资源文件路径的方法:
例如获取程序包中一个图片资源(apple.png)路径的方法:
NSString *imagePath = [[NSBundle mainBundle] pathForResource:@”apple” ofType:@”png”];
UIImage *appleImage = [[UIImage alloc] initWithContentsOfFile:imagePath];
代码中的mainBundle类方法用于返回一个代表应用程序包的对象。

iphone沙盒(sandbox)中的几个目录获取方式:

[cpp] view plain copy

  1. // 获取沙盒主目录路径  
  2. NSString *homeDir = NSHomeDirectory();  
  3. // 获取Documents目录路径  
  4. NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);  
  5. NSString *docDir = [paths objectAtIndex:0];  
  6. // 获取Caches目录路径  
  7. NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);  
  8. NSString *cachesDir = [paths objectAtIndex:0];  
  9. // 获取tmp目录路径  
  10. NSString *tmpDir =  NSTemporaryDirectory();  

[cpp] view plain copy

  1. // 获取当前程序包中一个图片资源(apple.png)路径  
  2. NSString *imagePath = [[NSBundle mainBundle] pathForResource:@"apple" ofType:@"png"];  
  3. 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]];
}

时间: 2024-11-01 12:28:14

ios中获取各种文件的目录路径方法的相关文章

IOS中获取各种文件的目录路径的方法

其实每个APP的程序都是单独的一个文件夹,每个APP之间相互之间独立,所以它们的文件夹也是独立的,这个文件夹就是沙盒(Sandbox).沙盒好处,安全; 坏处,程序之间彼此共享数据较为困难. 1)如何找到应用程序的沙盒源文件? 一般沙盒源文件都存放在~/Library/Application Support/iPhone Simulator/版本号/Applications/的文件夹中,但是这个Library(中文名叫资源库)文件夹是隐藏的.所以需要方法才能点击进去:在Finder中按CMD+S

js 获取本地文件及目录的方法(推荐)_javascript技巧

Javascript是网页制作中离不开的脚本语言,依靠它,一个网页的内容才生动活泼.富有朝气.但也许你还没有发现并应用它的一些更高级的功能吧?比如,对文件和文件夹进行读.写和删除,就象在VB.VC等高级语言中经常做的工作一样.怎么样,你是否需要了解这方面的知识?那就请跟我来,本文将详细描述如何使用Javascript语言进行文件操作. 一.功能实现核心:FileSystemObject 对象 其实,要在Javascript中实现文件操作功能,主要就是依靠FileSystemobject对象.在详

javascript文件中获取当前文件路径详解

1,在jQuery中获取当前JS文件路径 在jQuery中获取当前JS文件的路径比较简单,只需要如下一行代码就搞定. var __FILE__ = $("script").last().attr("src"); 注意,我们一般把这行代码放到文件的开头,让文件加载的时候就立即执行,这样页面中的script元素中,当前文件恰好是最后一个script.我们千万不要把这行代码放到  代码如下 复制代码 $(document).ready(); $(function(){  

iOS中获取系统相册中的图片实例_IOS

本文介绍了iOS中获取系统相册中的图片,在很多应用中都能用到,可以获取单张图片,也可以同时获取多张图片,废话不多说了,看下面吧. 一.获取单张图片 思路: 1.利用UIImagePickerController可以从系统自带的App(照片\相机)中获得图片 2.设置代理,遵守代理协议 注意这个UIImagePickerController类比较特殊,需要遵守两个代理协议 @interface ViewController () <UIImagePickerControllerDelegate,

ASP.NET MVC2 获取文件的绝对路径方法

由于在mvc2项目中将controller放在类库中,要用到解析xml文件,项目结构如下图 在类库中如何才能够获取xml文件的绝对路径,我在网上搜索了一下 appdomain.currentdomain.basedirectory 都是通过这个方法来获取当前应用程序域的基目录 那能不能通过server.mappath()来获取了,想了一下立刻动起手来 首先我在类库中引用了system.web.mvc 接着在controller类中server可以写出来,但是mappath点不出来,我就自己写上去

3 个在 Linux 中永久并安全删除文件和目录的方法

在大多数情况下,我们习惯于使用 Delete 键.垃圾箱或 rm 命令从我们的计算机中删除文件,但这不是永久安全地从硬盘中(或任何存储介质)删除文件的方法. 该文件只是对用户隐藏,它驻留在硬盘上的某个地方.它有可能被数据窃贼.执法取证或其它方式来恢复. 假设文件包含密级或机密内容,例如安全系统的用户名和密码,具有必要知识和技能的攻击者可以轻松地恢复删除文件的副本并访问这些用户凭证(你可以猜测到这种情况的后果). 在本文中,我们将解释一些命令行工具,用于永久并安全地删除 Linux 中的文件. 1

如何在win8系统中获取删除文件的最高权限?

  在以前的winXP系统和win7 64位旗舰版系统中,咱们默认使用的就是管理员账户登陆,因此咱们在操作Windows系统的时候遇到权限的问题也比较少,但是在进入到win8系统之后,为了更好的保护用户的隐私,Windows系统默认了不再使用管理员账户登陆,因此,咱们在进行一些操作的时候,就会收到诸如权限不足的提示,那么遇到这样的情况咱们要如何处理呢?今天,小编就来具体介绍一下,如何在win8系统中获取删除文件的最高权限? 1.首先,咱们需要返回到win8系统的传统桌面位置,然后在win8系统中

在ios中创建plist文件出现错误

问题描述 在ios中创建plist文件出现错误 我想写一个方法用来创建plist文件,在网上搜了一些代码案例,但是不知道哪出错了.在log中: 2013-03-28 15:33:47.953 ECom[6680:c07] Property list invalid for format: 100 (property lists cannot contain NULL)2013-03-28 15:33:47.954 ECom[6680:c07] An error has occures <ECOM

在html中调用js文件(无路径错误和书写错误),但js中的函数无法执行

问题描述 在html中调用js文件(无路径错误和书写错误),但js中的函数无法执行 我在html中调用js文件 这个文件中有5个函数,其中有一个函数已经可以用了,但是这个文件中的另外两个函数在调用的时候却没有反映,具体代码如下html代码 <form name=""form_dx"" action=""#"" method=""post"" onSubmit=""