iOS研发中的数据存储包括以下几种方式:plist文件、NSUserDefault、Archiver、SQLite、CoreData。
1、plist文件
- funcsaveWithFile()
- {
-
- lethome=NSHomeDirectory()asNSString;
- ///2、获得Documents路径,使用NSString对象的stringByAppendingPathComponent()方法拼接路径
- letdocPath=home.stringByAppendingPathComponent("Documents")asNSString;
- ///3、获取文本文件路径
- letfilePath=docPath.stringByAppendingPathComponent("data.plist");
- vardataSource=NSMutableArray();
- dataSource.addObject("衣带渐宽终不悔");
- dataSource.addObject("为伊消得人憔悴");
- dataSource.addObject("故国不堪回首明月中");
- dataSource.addObject("人生若只如初见");
- dataSource.addObject("暮然回首,那人却在灯火阑珊处");
- //4、将数据写入文件中
- dataSource.writeToFile(filePath,atomically:true);
- println("(filePath)");
- }
funcreadWithFile()
- letdataSource=NSArray(contentsOfFile:filePath);
- println("(dataSource)");
- }
2、NSUserDefaults存储数据
funcsaveWithNSUserDefaults()
- ///1、利用NSUserDefaults存储数据
- letdefaults=NSUserDefaults.standardUserDefaults();
- //2、存储数据
- defaults.setObject("衣带渐宽终不悔",0); background-color:inherit">forKey:"name");
- //3、同步数据
- defaults.synchronize();
- }
funcreadWithNSUserDefaults()
letdefaults=NSUserDefaults.standardUserDefaults();
letname=defaults.objectForKey("name")asNSString;
println("(name)");
}
3、归档存储(对象需要实现NSCoding协议,归档对应encode,反归档对应decode)
- 归档数据
- 需要实现NSCoding协议
- */
- funcsaveWithNSKeyedArchiver()
- lethome=NSHomeDirectory()asNSString;
- letfilePath=docPath.stringByAppendingPathComponent("book.data");
- letbook=CFAddressBook(name:"Francis",0); background-color:inherit">call:"199");
- /**
- *数据归档处理
- NSKeyedArchiver.archiveRootObject(book,0); background-color:inherit">toFile:filePath);
- }
*/
- funcreadWithNSKeyedUnarchiver()
- {
- letdocPath=home.stringByAppendingPathComponent("Documents")asNSString;
- letfilePath=docPath.stringByAppendingPathComponent("book.data");
- letbook=NSKeyedUnarchiver.unarchiveObjectWithFile(filePath)asCFAddressBook;
- println("(book.name),(book.call)");
- }
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|