在Mac OS X
的Cocoa
,NeXTSTEP
和GNUstep
编程框架中,
属性列表(Property List)文件是一种用来存储串行化后的对象的文件。属性列表文件的扩展名为.plist
,因此通常被称为
plist文件。
Plist文件通常用于储存用户设置,也可以用于存储捆绑的信息,该功能在旧式的Mac OS中是由资源分支提供的。
使用mac os 和Core Foundation中的property list接口我们可以在层式的对象和xml文件之间进行转换。我们可以把xml文件存储起来以后再把它以对象的形式读取出来。这里我们来具体讨论下property list和他们的表现形式,以及如何在编程过程中使用他们。
这里我想提到一下NSUserDefault,它其实也是以property list 的形式来存储的,但是它有限制,比如说NSColor和NSFont等类型式不能够直接存储的,我们必须要转换他们,要把他们转换成NSData类型来存储,我想在另一篇文章在详细说说这个问题。
废话不多说,我们开始吧。
在编程的过程中,我们可以在项目中建立plist来存储一些变量,具体的操作步骤File-new-Mac OS X-Resource-Property List。我们在项目中可以以xml形式或者source Code形式来编写。比如我们的plist原代码的形式象下面的xml一样。
<?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>Name</key>
<string>John Doe</string>
<key>Phones</key>
<array>
<string>408-974-0000</string>
<string>503-333-5555</string>
</array>
</dict>
</plist>
接下来我们从plist中读取信息,这是在iPhone开发中的应用:
//get the plist file from bundle
NSString *plistPath = [[NSBundle mainBundle] pathForResource:@"Data" ofType:@"plist"];
// build the array from the plist
NSMutableArray *anArray = [[NSMutableArray alloc]initWithContentOfFile:plistPath];
下面是写操作
NSString *error;
NSString *rootPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSUserDomainMask, YES) objectAtIndex:0];
NSString *plistPath = [rootPath stringByAppendingPathComponent:@"Data.plist"];
NSDictionary *plistDict = [NSDictionary dictionaryWithObjects:
[NSArray arrayWithObjects: personName, phoneNumbers, nil]
forKeys:[NSArray arrayWithObjects: @"Name", @"Phones", nil]];
NSData *plistData = [NSPropertyListSerialization dataFromPropertyList:plistDict
format:NSPropertyListXMLFormat_v1_0
errorDescription:&error];
if(plistData) {
[plistData writeToFile:plistPath atomically:YES];
}
else {
NSLog(error);
[error release];
}
主要的内容来自于:
http://developer.apple.com/library/mac/#documentation/cocoa/conceptual/PropertyLists/QuickStartPlist/QuickStartPlist.html#//apple_ref/doc/uid/10000048i-CH4-SW5
分享到:
相关推荐
`android-plist-parser-master`是一个专门针对这种情况的开源项目,它提供了一个Android库,用于解析iOS的.plist文件并将其转换为Android可理解的格式。 `plist`文件是XML或二进制格式,用于存储键值对、数组、字典...
在iOS开发中,plist文件是一种常用的存储数据的方式,它以XML格式存储键值对或结构化数据。在本文中,我们将深入探讨如何使用C#语言读取和写入iPhone中的plist文件,以及如何构建相关的工程文件。 首先,理解.plist...
本话题主要关注如何在Java环境中处理这些文件,特别是通过“dd-plist-1.23-bin.zip”这个工具包来读取和操作plist文件。 "dd-plist"是一个开源Java库,专为了解析和写入Apple的plist文件而设计。标题中的“dd-plist...
在Swifty-pList-master压缩包中,包含了该库的源代码、示例项目、文档以及测试用例。如果你打算使用此库,可以查看其README文件了解如何配置和使用,以及查阅示例代码来快速上手。同时,通过运行测试用例,可以验证...
在iOS开发中,数据存储是不可或缺的一部分,而plist(Property List)文件则是一种常见的轻量级数据存储格式。本文将详细解析"iOS全国省市区plist文件"及其在iOS应用中的应用。 标题“iOS全国省市区plist文件”指出...
总的来说,`android-plist-parser-master`为Android开发者提供了一种便捷的方式,以处理通常在iOS环境中出现的.plist文件,极大地拓宽了Android应用的跨平台兼容性。通过理解和熟练运用这个库,开发者可以更高效地...
在iOS和Mac开发中,Plist(Property List)文件是一种常用的数据存储格式,它用于存储结构化的XML或二进制数据。Plist文件通常用来保存应用程序的配置信息、用户设置或者轻量级的数据序列化。在给定的资料中,...
`plist`文件就是这类文件的一种,全称为Property List,是苹果操作系统(包括iPhone和iPad上的iOS)用来存储配置、设置和数据的XML格式文件。本话题将详细介绍`PlistEditor`这个工具,它是一个专门用于编辑iOS设备上...
在iOS开发中,plist(Property List)文件是一种用于存储数据的通用格式,它可以用来保存简单的数据结构,如字符串、数字、数组、字典等。Plist文件通常使用XML或二进制格式,易于人类阅读和机器解析。这篇教程将...
4. **FMDB**:这是一款基于SQLite的Objective-C数据库管理库,常用于iOS应用的数据存储。虽然在使用中遇到了一些问题,但通常它可以方便地执行SQL语句,进行数据查询、插入、更新和删除操作。如果遇到问题,可能需要...
6. 配置文件(.plist):存储应用的各种配置信息,如设置、偏好等。 7. Podfile或Carthage文件:如果项目使用了CocoaPods或Carthage进行依赖管理,这些文件会列出所需的第三方库。 8. README或文档:可能包含了项目...
在iOS应用开发中,IPA文件是苹果用于分发应用程序的标准格式。它包含了应用程序的二进制文件、资源、配置文件等。在这个特定的话题中,我们要关注的是`info.plist`文件和应用图标(icon)的解密过程。这些元素在IPA...
com.dd.plist-用于处理属性列表的Java库 该库使您的Java应用程序能够处理各种格式的属性列表。 它是根据MIT许可条款获得许可的。 属性列表是用于存储用户设置和序列化对象的文件。 它们源自NeXSTEP编程环境,现在...
在iOS开发中,Plist(Property List)文件是一种常见的数据存储格式,用于存储结构化的XML或二进制数据。Plist文件通常用来保存应用程序的配置信息、用户偏好设置或者简单的数据结构,如数组、字典、字符串、数字等...
在iOS开发中,`plist`(Property List)文件是一种常用的数据存储格式,它用于存储结构化的文本或二进制数据,比如应用的设置、配置信息或者简单的数据结构。本教程将详细讲解如何加载`plist`数据,并在界面中通过`...
在本压缩包“iOS-App-Source-Code-v1.6.7.4.zip”中,包含了一个基于iOS平台的应用程序源代码,该应用专注于蓝牙低能耗(Bluetooth Low Energy,简称BLE)技术。这个源代码版本为v1.6.7.4,这通常意味着它是经过多次...
在iOS开发中,plist(Property List)文件是一种常用的存储数据的方式,它以XML或二进制格式保存数据,包括字符串、数字、数组、字典等类型。本DEMO旨在教授如何在iPhone和iPad上读取、写入和保存plist文件。下面...
这个“ios-ios-today 快速启动.zip”文件可能包含了一个教程或者一个示例项目,旨在帮助开发者快速理解和实现iOS应用中的Today扩展功能。现在,我们将深入探讨iOS Today扩展的相关知识点。 首先,Today扩展是一种轻...
这里提到的“iOS省市区PList文件”就是一种常用的解决方案,它将中国的行政区划信息以PList(Property List)文件的形式存储,方便开发者在程序中读取和使用。 PList文件是Apple公司iOS和macOS操作系统中的一种数据...
本教程将围绕“ios-将数据使用plist方式缓存(封装)”这一主题,介绍如何在Objective-C和Swift中实现数据的plist缓存。 首先,理解Plist文件。Plist文件本质上是XML格式的,可以存储基础类型的数据,如字符串、...