数据存储之plist文件操作
2013-01-19 18:09
274 查看
plist,全名PropertyList,即属性列表文件,它是一种用来存储串行化后的对象的文件。这种文件,在ios开发过程中经常被用到。这种属性列表文件的扩展名为.plist,因此通常被叫做plist文件。文件是xml格式的。Plist文件是以key-value的形式来存储数据。既可以用来存储用户设置,也可以用来存储一些需要经常用到而不经常改动的信息。
在对plist文件的操作有创建,删除,写入和读取。这四种操作中,写入和读取是比较常用的操作。
下面我对这四种操作进行一一的陈述。
首先,是怎么去创建plist文件。Plist文件的创建既可以通过在程序中通过新建文件的方式来创建,也可以通过在程序中用代码的形式来创建文件。
第一种就是通过新建文件,在弹出的窗口中选择ios项目下的Resource中的Property List来进行plist文件的创建。然后点击TestPlistDemo.plist文件,出现一个Root行,点击Root这一行,然后通过点击右键->Add Row或者点击Root后面的加号来增加一行。这一行中包含三个属性,key、type、value。其中key是字段属性,type是字段类型,value是字段对应的值。而Type又包含7中类型,其中两种是Array和Dictionary,这两种是数组的形式,在它们下面还可以包含许多key-value。
而另外5种是Boolean,data,string,date,number。这5种类型的数据都是被array和dictionary所要包含的数据。
通过代码来创建plist文件,代码如下:
//建立文件管理
NSFileManager *fm = [NSFileManager
defaultManager];
//找到Documents文件所在的路径
NSArray *path =
NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSUserDomainMask,
YES);
//取得第一个Documents文件夹的路径
NSString *filePath = [path
objectAtIndex:0];
//把TestPlist文件加入
NSString *plistPath = [filePath
stringByAppendingPathComponent:@"test.plist"];
//开始创建文件
[fm createFileAtPath:plistPath
contents:nil
attributes:nil];
//删除文件
[fm removeItemAtPath:plistPath error:nil];
在写入数据之前,需要把要写入的数据先写入一个字典中,创建一个dictionary:
//创建一个字典
NSDictionary *dic = [NSDictionary
dictionaryWithObjectsAndKeys:@"zhangsan",@"1",@"lisi",@"2",
nil];
//把数据写入plist文件
[dic writeToFile:plistPath
atomically:YES];
读取plist中的数据,形式如下:
//读取plist文件,首先需要把plist文件读取到字典中
NSDictionary *dic2 = [NSDictionary
dictionaryWithContentsOfFile:plistPath];
//打印数据
NSLog(@"key1 is %@",[dic2
valueForKey:@"1"]);
NSLog(@"dic is %@",dic2);
关于plist中的array读写,代码如下:
//把TestPlist文件加入
NSString *plistPaths = [filePath
stringByAppendingPathComponent:@"tests.plist"];
//开始创建文件
[fm
createFileAtPath:plistPaths contents:nil
attributes:nil];
//创建一个数组
NSArray *arr = [[NSArray
alloc] initWithObjects:@"1",@"2",@"3",@"4",
nil];
//写入
[arr
writeToFile:plistPaths atomically:YES];
//读取
NSArray *arr1 = [NSArray
arrayWithContentsOfFile:plistPaths];
//打印
NSLog(@"arr1is %@",arr1);
demo下载地址:
http://pan.baidu.com/share/link?shareid=220755&uk=1277579135
在对plist文件的操作有创建,删除,写入和读取。这四种操作中,写入和读取是比较常用的操作。
下面我对这四种操作进行一一的陈述。
首先,是怎么去创建plist文件。Plist文件的创建既可以通过在程序中通过新建文件的方式来创建,也可以通过在程序中用代码的形式来创建文件。
第一种就是通过新建文件,在弹出的窗口中选择ios项目下的Resource中的Property List来进行plist文件的创建。然后点击TestPlistDemo.plist文件,出现一个Root行,点击Root这一行,然后通过点击右键->Add Row或者点击Root后面的加号来增加一行。这一行中包含三个属性,key、type、value。其中key是字段属性,type是字段类型,value是字段对应的值。而Type又包含7中类型,其中两种是Array和Dictionary,这两种是数组的形式,在它们下面还可以包含许多key-value。
而另外5种是Boolean,data,string,date,number。这5种类型的数据都是被array和dictionary所要包含的数据。
通过代码来创建plist文件,代码如下:
//建立文件管理
NSFileManager *fm = [NSFileManager
defaultManager];
//找到Documents文件所在的路径
NSArray *path =
NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSUserDomainMask,
YES);
//取得第一个Documents文件夹的路径
NSString *filePath = [path
objectAtIndex:0];
//把TestPlist文件加入
NSString *plistPath = [filePath
stringByAppendingPathComponent:@"test.plist"];
//开始创建文件
[fm createFileAtPath:plistPath
contents:nil
attributes:nil];
//删除文件
[fm removeItemAtPath:plistPath error:nil];
在写入数据之前,需要把要写入的数据先写入一个字典中,创建一个dictionary:
//创建一个字典
NSDictionary *dic = [NSDictionary
dictionaryWithObjectsAndKeys:@"zhangsan",@"1",@"lisi",@"2",
nil];
//把数据写入plist文件
[dic writeToFile:plistPath
atomically:YES];
读取plist中的数据,形式如下:
//读取plist文件,首先需要把plist文件读取到字典中
NSDictionary *dic2 = [NSDictionary
dictionaryWithContentsOfFile:plistPath];
//打印数据
NSLog(@"key1 is %@",[dic2
valueForKey:@"1"]);
NSLog(@"dic is %@",dic2);
关于plist中的array读写,代码如下:
//把TestPlist文件加入
NSString *plistPaths = [filePath
stringByAppendingPathComponent:@"tests.plist"];
//开始创建文件
[fm
createFileAtPath:plistPaths contents:nil
attributes:nil];
//创建一个数组
NSArray *arr = [[NSArray
alloc] initWithObjects:@"1",@"2",@"3",@"4",
nil];
//写入
[arr
writeToFile:plistPaths atomically:YES];
//读取
NSArray *arr1 = [NSArray
arrayWithContentsOfFile:plistPaths];
//打印
NSLog(@"arr1is %@",arr1);
demo下载地址:
http://pan.baidu.com/share/link?shareid=220755&uk=1277579135
相关文章推荐
- iOS开发:数据存储之plist文件操作
- 数据存储之plist文件操作
- iOS应用程序安全(20)-本地数据存储及其安全性(NSUserDefaults, CoreData, Sqlite, Plist 文件)(转)
- DICOM医学图像处理:DICOM存储操作之“多幅BMP图像数据存入DCM文件”
- 对象文件[置顶] 如何在 ASM 存储中使用 Data Pump (expdp impdp)进行数据导出导入操作
- 数据库操作_连接SQL Server数据库示例;连接ACCESS数据库;连接到 Oracle 数据库示例;SqlCommand 执行SQL命令示例;SqlDataReader 读取数据示例;使用DataAdapter填充数据到DataSet;使用DataTable存储数据库表;将数据库数据填充到 XML 文件;10 使用带输入参数的存储过程;11 使用带输入、输出参数的存储过程示;12 获得数据库中表的数目和名称;13 保存图片到SQL Server数据库示例;14 获得插入记录标识号;Exce
- 无废话Android之android下junit测试框架配置、保存文件到手机内存、android下文件访问的权限、保存文件到SD卡、获取SD卡大小、使用SharedPreferences进行数据存储、使用Pull解析器操作XML文件、android下操作sqlite数据库和事务(2)
- iOS-数据存储方式一之plist文件存储
- Cocos数据篇[3.4](4) ——plist文件操作
- Android开发7:简单的数据存储(使用SharedPreferences)和文件操作
- [120_移动开发Android]005_android开发之数据存储之文件操作
- ios开发系列之文件的写入读取,NSUserDefaults存储数据,NSFileManager操作文件和文件夹
- 数据存储之文件操作
- Spark Shuffle六大问题 fetch操作、数据存储、文件个数、什么排序算法简单介绍
- 这是一个定时脚本,主要功能是遍历该文件夹下的所有文件并存储到数组,对数据中的文件进行操作,一个一个移动到指定的目录下,并删除原有文件
- Swift - .plist文件数据的读取和存储
- DICOM医学图像处理:DICOM存储操作之 “多幅JPG图像数据存入DCM文件”
- ios plist文件存储数据
- Android数据存储操作②文件存储
- iOS 数据存储 plist文件存储