一、在Documents、tmp和Library中存储文件

Documents:用于存储应用程序中经常需要读取或写入的常规文件。

tmp:用于存储应用程序运行时生成的文件。(随着应用程序的关闭失去了利用价值)

Library:一般存放应用程序的配置文件,比如说plist类型的文件。

二、读取和写入文件

1、新建Empty Application应用程序,添加HomeViewController文件。

HomeViewController.h代码:

1 #import <UIKit/UIKit.h>
2  
3 @interface HomeViewController : UIViewController
4 {
5  
6 }
7 - (NSString *) documentsPath;//负责获取Documents文件夹的位置
8 - (NSString *) readFromFile:(NSString *)filepath; //读取文件内容
9 - (void) writeToFile:(NSString *)text withFileName:(NSString *)filePath;//将内容写到指定的文件
10 @end

HomeViewController.m代码:

1 #import "HomeViewController.h"
2 @interface HomeViewController ()
3 @end
4 @implementation HomeViewController
5 //负责获取Documents文件夹的位置
6 - (NSString *) documentsPath{
7 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
8 NSString *documentsdir = [paths objectAtIndex:0];
9 return documentsdir;
10 }
11  
12  
13 //读取文件内容
14 - (NSString *) readFromFile:(NSString *)filepath{
15 if ([[NSFileManager defaultManager] fileExistsAtPath:filepath]){
16 NSArray *content = [[NSArray alloc] initWithContentsOfFile:filepath];
17 NSString *data = [[NSString alloc] initWithFormat:@"%@", [content objectAtIndex:0]];
18 [content release];
19 return data;
20 } else {
21 return nil;
22 }
23 }
24 //将内容写到指定的文件
25 - (void) writeToFile:(NSString *)text withFileName:(NSString *)filePath{
26 NSMutableArray *array = [[NSMutableArray alloc] init];
27 [array addObject:text];
28 [array writeToFile:filePath atomically:YES];
29 [array release];
30 }
31  
32  
33 -(NSString *)tempPath{
34 return NSTemporaryDirectory();
35 }
36 - (void)viewDidLoad
37 {
38 NSString *fileName = [[self documentsPath] stringByAppendingPathComponent:@"content.txt"];
39  
40 //NSString *fileName = [[self tempPath] stringByAppendingPathComponent:@"content.txt"];
41  
42 [self writeToFile:@"苹果的魅力!" withFileName:fileName];
43  
44 NSString *fileContent = [self readFromFile:fileName];
45  
46 NSLog(fileContent);
47  
48 [super viewDidLoad];
49 }
50 @end

效果图:

本文转载至 http://mobile.9sssd.com/ios/art/953

 

iOS文件处理介绍(一)的更多相关文章

  1. iOS Simulator功能介绍关于Xamarin IOS开发

    iOS Simulator功能介绍关于Xamarin IOS开发 iOS Simulator功能介绍 在图1.38所示的运行效果中,所见到的类似于手机的模型就是iOS Simulator.在没有iPh ...

  2. ios中框架介绍

    ios中框架介绍 参考博客: 参考文章:框架介绍 框架介绍 框架就是一个目录,一个目录包含了共享库,访问共享库里面的代码的头文件,和其他的图片和声音的资源文件.一个共享库定义的方法和函数可以被应用程序 ...

  3. 【整理】Xcode中的iOS模拟器(iOS Simulator)的介绍和使用心得

    [整理]Xcode中的iOS模拟器(iOS Simulator)的介绍和使用心得 iOS模拟器简介 iOS功能简介 iOS模拟器,是在Mac下面开发程序时,开发iOS平台的程序时候,可以使用的辅助工具 ...

  4. IOS自动化打包介绍

    IOS自动化打包介绍  标签: app打包 , Ios打包 , iphone打包 , iphone自动化打渠道包    分类:无线客户端技术, 贴吧技术 摘要 随着苹果手持设备用户的不断增加,ios应 ...

  5. Unity——资源文件夹介绍

    Unity资源文件夹介绍 1.编辑时 在Asset文件下存在Resources和SteamingAsset文件夹: Resources 只读不可修改,打包时直接写死,没有办法通过热更新替换资源: 可以 ...

  6. TeamViewer12.0.71503(远程控制软件)精简版单文件企业版介绍

    TeamViewer 是一款能在任何防火墙和 NAT 代理的后台用于远程控制,桌面共享和文件传输的简单且快速的解决方案.为了连接到另一台计算机,只需要在两台计算机上同时运行 TeamViewer 即可 ...

  7. OC多文件开发介绍

    OC多文件开发介绍: 1.为什么要使用多文件? 在工作中,通常把不同的类放到不同的文件中,每个类的声明和实现分开,声明写在.h头文件中,实现写在相应的.m文件中去,类名是什么,文件名的前缀就是什么.假 ...

  8. iOS: 属性列表介绍 Introduction to Property Lists

    iOS: 属性列表介绍 Introduction to Property Lists 从本质上说, 属性列表就是苹果的对象数据序列化与反序列化方式 属性列表使用几种数据类型把数据组织为键值表和值表 P ...

  9. iOS——文件操作NSFileManager (创建、删除,复制,粘贴)

    iOS——文件操作NSFileManager (创建.删除,复制,粘贴)       iOS的沙盒机制,应用只能访问自己应用目录下的文件.iOS不像android,没有SD卡概念,不能直接访问图像.视 ...

随机推荐

  1. JS地毯式学习三

    1. 插件是一类特殊的程序 . 他可以扩展浏览器的功能 , 通过下载安装完成 . 比如 , 在线音乐.视频动画等等插件. // 检测非 IE 浏览器插件是否存在function hasPlugin(n ...

  2. PHP中Array的hash函数实现

    PHP中使用最多的非Array莫属了,那Array是如何实现的? 在PHP内部Array通过一个hashtable来实现,其中使用链接法解决hash冲突的问题,这样最坏情况下,查找Array元素的复杂 ...

  3. 【Unity】同时打开多个项目工程

    需求:学习Unity时经常会边参考别人的工程边写自己的Demo工程,需要同时打开多个项目工程. 网上查询的方式大约有两种: 在Edit->Preferences->Editor Analy ...

  4. shell命令之根据字符串查询文件对应行记录

    显示xxx字符串对应的行数,并向前打印3行,向后打印2行,查找对应文件为filename.txt 命令:grep -n 'xxx' -A3 -B2 --color=auto filename.txt ...

  5. spring 加载bean过程源码简易解剖(转载)

    这一篇主要是讲用载入bean的过程.其实就是IOC.低调 低调.. 我把重要的都挑出来了.一步步往下看就明白spring载入bean.xml里面bean的原理 . 感觉像候杰的 MFC深入浅出,哈哈. ...

  6. 解决spring-boot-starter-logging与log4j冲突

    由于公司在super-bom里配置了检查规则,build项目时遇到错误: [ERROR] [XXX Enforcer Rules] find DuplicateClasses Found in:org ...

  7. rails rake和示例

    一篇看到的讲解得不错的文章 http://blog.csdn.net/clskkk2222/article/details/6735365 这里还有一些例子: Rake Documentation R ...

  8. DataGridView基本操作

    1.获得某个(指定的)单元格的值:dataGridView1.Row[i].Cells[j].Value;2.获得选中的总行数:dataGridView1.SelectedRows.Count;3.获 ...

  9. jquery实现简单瀑布流代码

    测试环境:ie8 ff13.0.1  chrome22 可以将分页获取的内容依次填入四个div中,瀑布流的分页可以以多页(比如5页)为单位二次分页,这样可以减少后台算法的复杂度 <!DOCTYP ...

  10. Hibernate注解关系映射

    Hibernate Annotation关系映射的几种类型映射用法及使用方法(说明:以前实例的实体是user和role,主键分别是userid和roleid)   1)一对一外键关联映射(单向) @O ...