(转)iOS学习之 plist文件的读写

 在做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 plaincopy

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>jack</key>
        <dict>
            <key>phone_num</key>
            <string>13801111111</string>
            <key>age</key>
            <string>22</string>
        </dict>
        <key>tom</key>
        <dict>
            <key>phone_num</key>
            <string>13901111111</string>
            <key>age</key>
            <string>36</string>
        </dict>
    </dict>
    </plist>  

3、读取plist文件的数据

现在文件创建成功了,如何读取呢,实现代码如下:
[cpp] view plaincopy

    - (void)viewDidLoad
    {
        [super viewDidLoad];
        //读取plist  

        NSString *plistPath = [[NSBundle mainBundle] pathForResource:@"plistdemo" ofType:@"plist"];
        NSMutableDictionary *data = [[NSMutableDictionary alloc] initWithContentsOfFile:plistPath];
        NSLog(@"%@", data);//直接打印数据。
    }  

打印出来的结果:

[cpp] view plaincopy

    PlistDemo[6822:f803] {
        jack =     {
            age = 22;
            "phone_num" = 13801111111;
        };
        tom =     {
            age = 36;
            "phone_num" = 13901111111;
        };
    }  

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

4、创建和写入plist文件

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

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

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

[cpp] view plaincopy

    <strong>- (void)viewDidLoad
    {
        [super viewDidLoad];
        //读取plist  

        NSString *plistPath = [[NSBundle mainBundle] pathForResource:@"plistdemo" ofType:@"plist"];
        NSMutableDictionary *data = [[NSMutableDictionary alloc] initWithContentsOfFile:plistPath];
        NSLog(@"%@", data);  

        //添加一项内容
        [data setObject:@"add some content" forKey:@"c_key"];  

        //获取应用程序沙盒的Documents目录
        NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
        NSString *plistPath1 = [paths objectAtIndex:0];  

        //得到完整的文件名
        NSString *filename=[plistPath1 stringByAppendingPathComponent:@"test.plist"];
       //输入写入
        [data writeToFile:filename atomically:YES];  

        //那怎么证明我的数据写入了呢?读出来看看
        NSMutableDictionary *data1 = [[NSMutableDictionary alloc] initWithContentsOfFile:filename];
        NSLog(@"%@", data1);  

        // Do any additional setup after loading the view, typically from a nib.
    }
    </strong>  

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

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

代码地址:https://github.com/schelling/YcDemo/tree/master/PlistDemo
时间: 2024-11-08 19:18:54

(转)iOS学习之 plist文件的读写的相关文章

iOS学习之 plist文件的读写

在做iOS开发时,经经常使用到到plist文件,  那plist文件是什么呢? 它全名是:Property List,属性列表文件,它是一种用来存储串行化后的对象的文件.属性列表文件的扩展名为.plist ,因此通常被称为 plist文件.文件是xml格式的. Plist文件通经常使用于储存用户设置,也能够用于存储捆绑的信息 我们创建一个项目来学习plist文件的读写. 1.创建项目Plistdemo 项目创建之后能够找到项目相应的plist文件,打开例如以下图所看到的: 在编辑器中显示相似与表

iOS plist文件的读写

原帖:http://blog.csdn.net/totogo2010/article/details/7634185 在做iOS开发时,经常用到到plist文件,  那plist文件是什么呢? 它全名是:Property List,属性列表文件,它是一种用来存储串行化后的对象的文件.属性列表文件的扩展名为.plist ,因此通常被称为 plist文件.文件是xml格式的. Plist文件通常用于储存用户设置,也可以用于存储捆绑的信息 我们创建一个项目来学习plist文件的读写. 1.创建项目Pl

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

在Xcode中建立一个iOS项目后,会自己产生一个.plist文件,点击时会看见它显示的是类似于excel表格: 但是,如果打开方式选择Source Code,你会看见它其实是一个xml文件. 我们会做一个小例子,在这个例子中我们自己建立一个plist文件并填入数据,然后运行时读取这个plist文件,并将数据填写在界面上. 首先要知道读取plist文件的方法,一般来说,使用代码 NSString *plistPath = [[NSBundle mainBundle] pathForResourc

iOS 开发之 - Plist文件的基本操作

plist文件是一个轻量级的数据库,用于存放一些比较小的数据.下面是对plist的基本操作. 新建一个Plist文件 我这里是新建的一个以整体为Array,item是字典的plist文件. 如图: 一般开发中,如果是要操作plist文件的话.都是要把plist文件放到沙盒(Document) 目录下的 先得到资源目录: //得到资源目录(新建的plist文件) - (NSString *)getDataSourcePath:(NSString *) sourceName andType:(NSS

ios开发入门- plist 文件读写

在xcode中创建一个项目 会在supportion files 目录下 看见一个已plist后缀类型的文件,这个文件 是以 key value 存放的键 值对的值.它全名是:Property List,属性列表文件,它是一种用来存储串行化后的对象的文件.属性列表文件的扩展名为.plist ,因此通常被称为 plist文件.plist文件是标准的xml格式的.  我们在日常开发中 可以用它 来存储 一些系统的 的用户信息,系统的配置信息等. 本章 我们来看看plist 文件是 如何读写的 在具体

Reveal分析IOS界面,plist文件读取

Reveal分析IOS界面,需要得到app的 softwareVersionBundleId上传到iphone中 , 而IOS8的iTunesMetadata.plist 去Downloads里面查找很费劲 ,所以写了个辅助脚本,一次性全部读取出来 主要使用python,实现遍历文件夹获取文件列表,然后读取字段,输出成文件libReveal.plist格式 python读取plist文件的库 来自https://github.com/wooster/biplist/ 1 path = '/Use

iOS中info.plist文件的一些相关配置

下面是一些iOS项目中常用的plist文件的相关设置: 1.定位为题: 调用定位时在target里设置两个属性:NSLocationAlwaysUsageDescription  NSLocationWhenInUseUsageDescription 2. 网络请求: Xcode升级后不支持http访问的解决办法:在Info.plist中添加NSAppTransportSecurity类型Dictionary.    在NSAppTransportSecurity下添加NSAllowsArbit

plist文件的读写

读取方法 //获得plist文件的路径 NSString *plistPath = [[NSBundle mainBundle] pathForResource:@"SearchHistory" ofType:@"plist"]; //从路径中读取文件,取决于你的plist文件里的属性 _historyArray=[[NSMutableArray alloc] initWithContentsOfFile:plistPath]; 写入方法 //获得plist文件的路

iOS学习之PCH文件

1. PCH文件概述 PCH文件是一种预编译头文件(一般扩展名为.PCH),是把一个工程中较稳定的代码预先编译好放在一个文件(.PCH)里.这些预先编译好的代码可以是任何的C/C++代码--甚至可以是inline函数,只它们在整个工程中是较为稳定的,即在工程开发过程中不会经常被修改的代码. 在 Xcode6.0 之前的版本中,生成的 Single View Application 工程中自动存在PCH文件,Xcode6.0 之后就去掉了pch,为了一些琐碎的头文件引用,加快了编译速度! 如图为