iOS 中 plist 文件的使用

我们在写 app 很多时候都可能需要用到一些类似与城市列表之类的数据,这些数据可以保存在 plist 文件里。

解释一下,plist 文件就是 Property List 文件,我们在 Xcode 中新建一个 Project 的时候,在 Project 中可以看到有一个 Info.plist 文件,这种以 .plist 后缀结尾的文件是以 key-value 键值对的形式保存数据的。在开发中,我们可以使用这些 plist 文件保存一些系统配置、用户信息等的信息,炒鸡方便。

iOS 中 plist 文件的使用_第1张图片
你看这调皮的 Info.plist 文件

这样吧,我搞一个 plist 文件,里面放有一些城市列表数据,然后把它读取出来。

开搞

新建一个 Property List 文件(以下简称 plist 文件),姑且起个名字 Cities.plist


iOS 中 plist 文件的使用_第2张图片
选择 iOS -> Resource -> Property List

打开 Cities.plist 文件,发现它可以存储 Array(数组)和 Dictionary(字典)数据


iOS 中 plist 文件的使用_第3张图片
Cities.plist 初体验

由于城市列表就是个数组,所以我们在 Root 这个 key 中的 Type 选择 Array,并往里面添加点城市数据


iOS 中 plist 文件的使用_第4张图片
城市列表

添加完模拟数据,才发现添加的不是城市数据...算了,当作城市吧
其实 plist 文件本质就是一个 xml 文件





 
  cityID
  1
  cityName
  北京
  cityRemark
  直辖市
 
 
  cityID
  2
  cityName
  天津
  cityRemark
  直辖市
 
 
  cityID
  3
  cityName
  河北
  cityRemark
  
 
 
  cityID
  4
  cityName
  山西
  cityRemark
  
 
 
  cityID
  5
  cityName
  内蒙古
  cityRemark
  自治区
 
 
  cityID
  6
  cityName
  辽宁
  cityRemark
  
 


读取 plist 文件

#import "ViewController.h"

@interface ViewController ()

@property (nonatomic, strong) NSArray *cities;

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    NSBundle *bundle = [NSBundle mainBundle];
    NSString *filePath = [bundle pathForResource:@"Cities" ofType:@"plist"];
    self.cities = [NSArray arrayWithContentsOfFile:filePath];
    NSLog(@"城市列表-->%@", self.cities);
}

@end

控制台打印:


iOS 中 plist 文件的使用_第5张图片
城市列表

这样拿到数据就可以对它进行一些处理了。
好吧,我只是经常要用到记录一下而已

你可能感兴趣的:(iOS 中 plist 文件的使用)