plist文件Boolean类型读写方法
http://blog.csdn.net/a6472953/article/details/7659505 转
1、读取plist文件中的Boolean类型的字段值时,要先把它转为NSNumber类型,然后通过NSNumber的boolValue方法来读取该值。例子如下:
bool IsTrue=[(NSNumber*)[dic objectForKey:@"IsTrue"]boolValue];
2、写入时也是类似:
Boolean setting =NO;
NSNumber *testBoolean =[[NSNumber alloc]initWithBool:setting];
然后,才进行 plist文件的读写
3、读写plist文件
//下面函数主要是 获取的UISwitch(即switchView,在IB中进行了关联)的值,将其当前的值保存到plist文件中,以便程序下次启动时使用;通过这种方式可以保存和读取程序的一些配 置信息
- (void)viewDidLoad
{
[superviewDidLoad];
#if 0
//1、创建plist文件
//获取沙盒路径,创建plist文件,因为系统的list文件是只读属性,在沙盒中的文件才是可读和可写的,必须在沙盒中创建plist文件
NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
NSString *path=[paths objectAtIndex:0];
NSString *filename=[path stringByAppendingPathComponent:@"personal.plist"];
//创建一个NSDictionary
NSMutableDictionary *dictionary =[[NSMutableDictionary alloc]init];
//创建3个添加到dictionary中的变量,并对其赋值
NSString *testString = [[NSString alloc]initWithString:@"fistValue1111"];
NSNumber *testInt = [[NSNumber alloc]initWithInt:5];
NSNumber *testBoolean =[[NSNumber alloc]initWithBool:YES];
//将3个变量添加到dictionary中
[dictionary setValue:testString forKey:@"String test"];
[dictionary setValue:testInt forKey:@"INteger test1"];
[dictionary setValue:testBoolean forKey:@"Boolean test"];
//将dictionary中的数据写入plist文件中
[dictionary writeToFile:filename atomically:YES];
NSLog(@"%@",filename);
#endif
/******************************************************************/
//2、读取plist文件*获取某一个key的对应的valuse
//读取plist文件,获取UISwitch的值,根据值来设置UISwitvch的显示
//获取沙盒路径,创建plist文件,因为系统的list文件是只读属性,在沙盒中的文件才是可读和可写的,必须在沙盒中创建plist文件
NSArray *readPaths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
NSString *readPath=[readPaths objectAtIndex:0];
NSString *plistPath=[readPathstringByAppendingPathComponent:@"personal.plist"];
//读取到一个NSDictionary
NSDictionary *dictionary1 = [[NSDictionaryalloc]initWithContentsOfFile:plistPath];
//读取plist文件中的Boolean类型的字段值时,要先把它转为NSNumber类型,然后通过NSNumber的boolValue方法来读取该值。例子如下:
bool switchFlag=[(NSNumber*)[dictionary1objectForKey:@"Boolean test"]boolValue];
//Boolean switchFlag = [dictionary1 objectForKey:@"Boolean test"];
[self.switchViewaddTarget:selfaction:@selector(switchViewChange:)forControlEvents:UIControlEventValueChanged];
if(switchFlag)
{
NSLog(@"switch的值为 NO");
switchView.on = YES;
//switchView.on
}
else//switchFlag=NO
{
NSLog(@"switch的值为 YES");
switchView.on = NO;
}
//读取到一个NSArray
// NSArray *array = [[NSArray alloc] initWithContentsOfFile:plistPath];
// Do any additional setup after loading the view from its nib.
}
- (void)viewDidUnload
{
[superviewDidUnload];
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
-(void)switchViewChange:(id)sender
{
UISwitch *theSwitch =(UISwitch *)sender;
NSLog(@"switch do nothing");
Boolean setting = theSwitch.on;
if(setting == NO)
{
NSLog(@"current setting = NO");
}
else if(setting == YES)
{
NSLog(@"current setting = YES");
}
//获取沙盒路径,创建plist文件,因为系统的list文件是只读属性,在沙盒中的文件才是可读和可写的,必须在沙盒中创建plist文件
NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
NSString *path=[paths objectAtIndex:0];
NSString *plistPath=[pathstringByAppendingPathComponent:@"personal.plist"];
NSMutableDictionary *dictionary =[[NSMutableDictionaryalloc]initWithContentsOfFile:plistPath];
NSNumber *testBoolean =[[NSNumber alloc]initWithBool:setting];
[dictionary setValue:testBoolean forKey:@"Boolean test"];
[dictionary writeToFile:plistPath atomically:YES];
}
plist文件Boolean类型读写方法的更多相关文章
- php 获取文件mime类型的方法
php 获取文件mime类型的方法 使用fileinfo需要安装php_fileinfo扩展. 如已安装可以在extension_dir目录下找到php_fileinfo.dll(windows),f ...
- 还原TexturePacker plist 文件以及图片的方法 (切开各小图片)
原地址:http://blog.csdn.net/linuxchen/article/details/16865645 Python 脚本:(来自网络) unpack_plist.py 命令行: py ...
- plist文件真机写入方法
http://blog.csdn.net/mydo/article/details/50290219 转 但是这对真机不管用,因为在真机环境下,App在Xcode中的Resources文件夹都是不可 ...
- ios 简单的plist文件读写操作(Document和NSUserDefaults)
最近遇到ios上文件读写操作的有关知识,记录下来,以便以后查阅,同时分享与大家. 一,简单介绍一下常用的plist文件. 全名是:Property List,属性列表文件,它是一种用来存储串行化后的对 ...
- 使用ASP.NET 上传文件 三种类型判断方法(后缀,MIME,数据流)
#region 一. 安全性比较低,把文本文件1.txt改成1.jpg照样可以上传,但其实现方法容易理解,实现也简单,所以网上很多还是采取这种方法. Boolean fileOk = false; s ...
- ios本地文件内容读取,.json .plist 文件读写
ios本地文件内容读取,.json .plist 文件读写 本地文件.json .plist文件是较为常用的存储本地数据的文件,对这些文件的操作也是一种常用的基础. 本文同时提供初始化变量的比较标准的 ...
- C/C++读写文件的几种方法fstream fopen、fwrite()、fread()操作
C中采用的主要是文件指针的办法,C++中对文件的操作主要运用了"文件流"(即非标准的输入输出)的思想 c读写文件fopen C 库函数 FILE *fopen(const char ...
- [转载]C#读写txt文件的两种方法介绍
C#读写txt文件的两种方法介绍 by 大龙哥 1.添加命名空间 System.IO; System.Text; 2.文件的读取 (1).使用FileStream类进行文件的读取,并将它转换成char ...
- Dynamic CRM 2013学习笔记(十七)JS读写各种类型字段方法及技巧
我们经常要对表单里各种类型的字段进行读取或赋值,下面列出各种类型的读写方法及注意事项: 1. lookup 类型 清空值 var state = Xrm.Page.getAttribute(" ...
随机推荐
- python 笔记
第一周2016/9/11 Python 2.0和3.0的区别 3.0 的模块名改了和之前的2.0 不一样 #!/usr/bin/env python # -*- coding:utf-8 -*- ...
- OGNL_一点
ognl此表达式语言,是一门什么样的语言呢?下面然我为大家简单的讲解一点小小的关于它的内容吧! 然我来简单得解释说:OGNL(Object-Graph Navigation Language),可以方 ...
- HttpWebRequest调用WebAPI
private void button1_Click(object sender, EventArgs e) { string ss= HttpPost("http://localhost: ...
- draggable datagrid columns
$.extend($.fn.datagrid.methods,{ columnMoving: function(jq){ return jq.each(function(){ var target = ...
- 使用VB6制作RTD函数
以前模仿大神在vs里使用c#实现RTD函数功能.(真是很生僻的东东啊)C#制作RTD参考:大神博客跳转.最近想VB里能不能做?就试着做了做,好像基本成了,整套代码有些毛病,勉强能算个样子,暂时不打算再 ...
- BW常用事务码Tcode
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- HDU-4531 吉哥系列故事——乾坤大挪移 模拟
题意:给定一个九宫格,然后能够选择某行或者是某列滚动,每个小方格分为上下左右四个块,每个块可以涂上4种不同的颜色.问最少使用多少步能够使得所有相同颜色相互联通. 分析:由于九宫格的所有的状态只有9!( ...
- linux SVNUP显示无法连接主机
今天开发环境中突然无法连接主机了,我就想到 1.更改svn 链接地址,发现不可取,工程中的每个目录下面都有个.svn文件,修改起来麻烦: 2.建立新文件夹,重新checkout,发现还是无法链接 最后 ...
- netstat__stat
1."man netstat" 查看 命令"netstat"的参数和打印信息的含义 2."netstat -awp" --> ZC: ...
- Java命令提示符编译
Java利用命令提示符编译 1:最简单的方式:直接编译 /** 文件路径:G:\测试项目\java\src 文件名称:JacaText.java 编写时间:2016/6/2 作 者:郑晨辉 编写说明: ...