`

(转)【ios】 plist文件的读写

    博客分类:
  • IOS
阅读更多

 转自:http://blog.csdn.net/totogo2010/article/details/7634185

 

 在做iOS开发时,经常用到到plist文件,  那plist文件是什么呢? 它全名是:Property List,属性列表文件,它是一种用来存储串行化后的对象的文件。属性列表文件的扩展名为.plist ,因此通常被称为 plist文件。文件是xml格式的。

 

Plist文件通常用于储存用户设置,也可以用于存储捆绑的信息

 

我们创建一个项目来学习plist文件的读写。

 

1、创建项目Plistdemo

 

项目创建之后可以找到项目对应的plist文件,打开如下图所示:


在编辑器中显示类似与表格的形式,可以在plist上右键,用源码方式打开,就能看到plist文件的xml格式了。

 

 

2、创建plist文件。

 

 

按command +N快捷键创建,或者File —> New —> New File,选择Mac OS X下的Property List


创建plist文件名为plistdemo。

 

 

 

打开plistdemo文件,在空白出右键,右键选择Add row 添加数据,添加成功一条数据后,在这条数据上右键看到 value Type选择Dictionary。点加号添加这个Dictionary下的数据


添加完key之后在后面添加Value的值,添加手机号和年龄

 

创建完成之后用source code查看到plist文件是这样的:

 

[cpp] view plain copy
 
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">  
  3. <plist version="1.0">  
  4. <dict>  
  5.     <key>jack</key>  
  6.     <dict>  
  7.         <key>phone_num</key>  
  8.         <string>13801111111</string>  
  9.         <key>age</key>  
  10.         <string>22</string>  
  11.     </dict>  
  12.     <key>tom</key>  
  13.     <dict>  
  14.         <key>phone_num</key>  
  15.         <string>13901111111</string>  
  16.         <key>age</key>  
  17.         <string>36</string>  
  18.     </dict>  
  19. </dict>  
  20. </plist>  

 

 

 

3、读取plist文件的数据

 

现在文件创建成功了,如何读取呢,实现代码如下:
[cpp] view plain copy
 
  1. - (void)viewDidLoad  
  2. {  
  3.     [super viewDidLoad];  
  4.     //读取plist  
  5.   
  6.     NSString *plistPath = [[NSBundle mainBundle] pathForResource:@"plistdemo" ofType:@"plist"];  
  7.     NSMutableDictionary *data = [[NSMutableDictionary alloc] initWithContentsOfFile:plistPath];  
  8.     NSLog(@"%@", data);//直接打印数据。  
  9. }  
打印出来的结果:

 

[cpp] view plain copy
 
  1. PlistDemo[6822:f803] {  
  2.     jack =     {  
  3.         age = 22;  
  4.         "phone_num" = 13801111111;  
  5.     };  
  6.     tom =     {  
  7.         age = 36;  
  8.         "phone_num" = 13901111111;  
  9.     };  
  10. }  

 

这样就把数据读取出来了。

 

 

4、创建和写入plist文件

在开发过程中,有时候需要把程序的一些配置保存下来,或者游戏数据等等。 这时候需要写入Plist数据。

写入的plist文件会生成在对应程序的沙盒目录里。

接着上面读取plist数据的代码,加入了写入数据的代码,

 

[cpp] view plain copy
 
  1. <strong>- (void)viewDidLoad  
  2. {  
  3.     [super viewDidLoad];  
  4.     //读取plist  
  5.   
  6.     NSString *plistPath = [[NSBundle mainBundle] pathForResource:@"plistdemo" ofType:@"plist"];  
  7.     NSMutableDictionary *data = [[NSMutableDictionary alloc] initWithContentsOfFile:plistPath];  
  8.     NSLog(@"%@", data);  
  9.       
  10.     //添加一项内容  
  11.     [data setObject:@"add some content" forKey:@"c_key"];  
  12.       
  13.     //获取应用程序沙盒的Documents目录  
  14.     NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);  
  15.     NSString *plistPath1 = [paths objectAtIndex:0];  
  16.       
  17.     //得到完整的文件名  
  18.     NSString *filename=[plistPath1 stringByAppendingPathComponent:@"test.plist"];  
  19.    //输入写入  
  20.     [data writeToFile:filename atomically:YES];  
  21.       
  22.     //那怎么证明我的数据写入了呢?读出来看看  
  23.     NSMutableDictionary *data1 = [[NSMutableDictionary alloc] initWithContentsOfFile:filename];  
  24.     NSLog(@"%@", data1);  
  25.       
  26.       
  27.     // Do any additional setup after loading the view, typically from a nib.  
  28. }  
  29. </strong>  

在获取到自己手工创建的plistdemo.plist数据后,在这些数据后面加了一项内容,证明输入写入了。

 

 

怎么证明添加的内容写入了呢?下面是打印结果:


 


代码地址:https://github.com/schelling/YcDemo/tree/master/PlistDemo
分享到:
评论

相关推荐

    iOS中plist文件读写

    本篇文章将深入探讨如何在iOS环境中进行plist文件的读写操作,以及与沙盒(sandbox)环境的关系。 首先,我们要理解iOS应用程序的沙盒概念。每个iOS应用都有自己的沙盒,这是一个隔离的文件系统空间,应用只能访问...

    IOS plist文件详解

    这篇内容将深入解析.plist文件的结构、类型以及如何在iOS中进行读写操作。 .plist文件主要支持以下几种数据类型: 1. 字符串(String):可以是纯文本,也可以是XML或JSON。 2. 数字(Number):整数(Integer)和浮点数...

    plist文件读写操作

    本篇文章将深入探讨如何在iOS应用中进行plist文件的读写操作。 首先,我们要了解.plist文件的类型。主要有二进制格式(.plist binary)和XML格式(.plist XML)。二进制格式占用的空间小,读写速度快,而XML格式则...

    iOS开发读取plist文件、iphone中plist文件的读写存 DEMO

    在iOS开发中,plist(Property List)文件是一种常用的存储数据的方式,它以XML或二进制格式保存数据,包括字符串、数字、数组、字典等类型。本DEMO旨在教授如何在iPhone和iPad上读取、写入和保存plist文件。下面...

    iOS开发Plist读写操作源码

    在iOS开发中,Plist(Property List)是一种用于存储数据的简单文件格式,常用于配置文件、应用数据备份等场景。本教程将深入探讨如何在iOS应用中进行Plist的读写操作,这对于理解iOS应用的数据持久化至关重要。 ...

    读写plist文件

    读写plist文件,方便iOS开发读写plist文件,方便iOS开发

    解析汽车品牌的plist文件iOS

    在iOS开发中,plist文件是一种常见的数据存储格式,用于存储结构化的XML或二进制数据。这个"解析汽车品牌的plist文件iOS"项目很可能是为了演示如何读取和处理包含汽车品牌信息的plist文件。下面我们将深入探讨这个...

    iOS基础源码之 plist文件的读取例子

    在iOS开发中,Plist(Property List)文件是一种常见的数据存储格式,用于存储结构化的XML或二进制数据。Plist文件通常用来保存应用程序的配置信息、用户偏好设置或者简单的数据结构,如数组、字典、字符串、数字等...

    ios中的plist文件修改器_pledit

    XML格式的.plist文件易于阅读,而二进制格式则更紧凑,读写速度更快。 2. **Pledit的功能**:`Pledit`允许用户打开并查看.plist文件的内容,无论是XML还是二进制格式。用户可以直观地编辑键值对,添加、删除、修改...

    plist文件读写.zip

    总之,Objective-C提供了方便的API来处理`plist`文件的读写操作,使得存储和检索结构化数据变得简单。熟练掌握这些操作对于iOS和macOS开发者来说至关重要,因为`plist`文件在很多场景下都是首选的数据存储方式。通过...

    ios-将数据使用plist方式缓存(封装).zip

    本教程将围绕“ios-将数据使用plist方式缓存(封装)”这一主题,介绍如何在Objective-C和Swift中实现数据的plist缓存。 首先,理解Plist文件。Plist文件本质上是XML格式的,可以存储基础类型的数据,如字符串、...

    中国所有城市的plist文件

    Plist文件通常用于存储配置信息、应用程序数据或者用户设置,它以XML或二进制的形式保存数据,易于读写且支持多种数据类型。 【描述】中提到,“中国城市列表”是这个plist文件的核心内容,包含了中国境内各个城市...

    iOS plist详细使用

    在iOS开发中,通常会用`NSDictionary`来表示`plist`文件中的数据结构。`NSDictionary`可以存储键值对,其中键是`NSString`,值可以是任何`NSCoding`协议支持的对象,如基本数据类型、字符串、数组、字典等。 ### 5....

    iOS本地文件操作

    本篇文章将深入探讨如何在iOS中进行文件的读写、删除以及搜索,特别是针对.plist文件的操作。 首先,我们需要了解iOS中的文件系统。每个iOS应用都有自己的沙盒环境,其中包含Documents、Library、tmp和Cache四个...

    Plist文件查看器

    XML格式的Plist文件易于阅读,而二进制格式则更紧凑,读写效率更高。 在iOS和macOS开发中,Apple提供了内置的API来处理Plist文件,如`CFPropertyListCreateWithData`和`CFPropertyListWrite`函数,但这些API仅限于...

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

    总的来说,iOS中对plist文件的操作主要涉及到文件路径的获取、字典的创建与操作以及文件读写管理。这些操作都需要理解Foundation框架中的基本数据类型和文件系统接口。在实际开发中,为了确保数据安全和性能优化,...

    iOS应用中存储用户设置的plist文件的创建与读写教程

    在iOS应用开发中,plist文件(Property List)是常用的数据存储方式,特别是在处理用户设置时。本文将深入探讨如何在iOS应用中创建、读取和写入用户设置的plist文件。 1. **什么是plist文件?** plist文件是苹果...

    Java的PList类库 Blister_java_plist_

    PList文件是一种XML或二进制格式的数据存储方式,广泛应用于iOS、macOS以及相关的Apple软件中,用于存储配置信息、应用数据等。Blister_java_plist_提供了一个方便的API,使得在Java环境中读取和写入PList文件变得...

    用plist保存账号密码

    在iOS和macOS开发中,Plist(Property List)是一种常用的数据存储格式,它用于存储结构化的XML或二进制数据。Plist可以用来保存应用程序的配置信息、用户设置或者其他轻量级的数据,例如账号和密码。在本教程中,...

    iOS开发文件相关的操作.zip

    在iOS开发中,文件管理是应用的基本功能之一,它涉及到数据的存储、读取和更新。...同时,学习过程中也应关注性能优化,比如合理选择存储路径,避免频繁读写导致的性能问题,以及正确处理文件权限等。

Global site tag (gtag.js) - Google Analytics