iOS开发——数据持久化Swift篇&模型对象归档

模型对象归档

 1 import UIKit
 2
 3 class ViewController: UIViewController {
 4
 5
 6
 7     @IBOutlet weak var textField: UITextField!
 8
 9     @IBAction func btnSave(sender: UIButton) {
10         var text = textField.text as NSString
11         var image = UIImage(named: "log")
12
13         var textFilepath = getPath("data.txt")
14         var person = Person()
15         person.name =text
16         person.log = image
17
18         var data = NSKeyedArchiver.archivedDataWithRootObject(person)
19         data.writeToFile(textFilepath, atomically: true)
20     }
21
22     @IBAction func btnLoad(sender: UIButton) {
23         var textFilepath = getPath("data.txt")
24         var person = NSKeyedUnarchiver.unarchiveObjectWithFile(textFilepath)  as Person
25         textField.text = person.name
26         textField.image = person.image
27
28         println(log.image)
29         println(person.name)
30     }
31
32
33     @IBOutlet weak var logImage: UIImageView!
34
35     override func viewDidLoad() {
36         super.viewDidLoad()
37
38         /**
39         Archive
40         */
41
42
43         /**
44             UnArchive
45         */
46
47
48
49     }
50
51     override func didReceiveMemoryWarning() {
52         super.didReceiveMemoryWarning()
53         // Dispose of any resources that can be recreated.
54     }
55
56
57     //获取文件目录
58     func getPath(fileName:String)->String {
59         var paths = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask, true)
60         var documents = paths[0] as? String
61         return documents!.stringByAppendingPathComponent(fileName)
62     }
63
64
65 }
时间: 2024-10-16 23:41:18

iOS开发——数据持久化Swift篇&模型对象归档的相关文章

iOS开发——数据持久化Swift篇&(一)NSUserDefault

NSUserDefault 1 2 //******************** 5.1 NSUserDefault和对象归档 3 func useNSUserDefault() 4 { 5 //通过单利来创建一个NSUserDefaults对象,全局变量NSUserDefault,可在整个项目传递变量 6 var userDefault:NSUserDefaults = NSUserDefaults.standardUserDefaults() 7 8 //通过init方法创建 9 var u

iOS开发——数据持久化Swift篇&iCloud云存储

iCloud云存储 1 import UIKit 2 3 class ViewController: UIViewController { 4 5 override func viewDidLoad() { 6 super.viewDidLoad() 7 /** 8 1:可以存储两种 9 //IOS可识别的文档 10 11 //字典对象 12 */ 13 14 // 2: Ubiquity Container............数据区域 15 16 17 /** 18 3: 19 分成多个文

iOS开发——数据持久化Swift篇&通用文件存储

通用文件存储 1 import UIKit 2 3 class ViewController: UIViewController { 4 5 @IBOutlet weak var textField: UITextField! 6 7 @IBAction func btnSave(sender: UIButton) { 8 var text = textField.text as NSString 9 10 //写入文件(可序列化) 11 text.writeToFile(getPath("da

iOS开发——数据持久化Swift篇&(三)SQLite3

SQLite3 使用 1 //******************** 5.3 SQLite3存储和读取数据 2 func use_SQLite3() 3 { 4 //声明一个Documents下的路径 5 var dbPath = NSHomeDirectory() + "/Documents/SwiftClassDB.sqlite" 6 7 //判断数据库文件是否存在 8 if !NSFileManager.defaultManager().fileExistsAtPath(dbP

iOS开发——数据持久化Swift篇&SettingBundle

SettingBundle 1 import UIKit 2 3 class ViewController: UIViewController { 4 5 var userDefault = NSUserDefaults.standardUserDefaults() 6 7 @IBOutlet weak var textField: UITextField! 8 9 @IBAction func btnSave(sender: UIButton) { 10 updateUserDefaults(

iOS开发——数据持久化Swift篇&(二)沙盒文件

沙盒文件 1 //******************** 5.2 文件操作 2 func use_FileOperations() 3 { 4 //1.获取程序的Home目录 5 let homeDirectory = NSHomeDirectory() 6 println(homeDirectory) 7 8 9 //2.获取Documents目录 10 let documentPaths = NSSearchPathForDirectoriesInDomains(NSSearchPathD

iOS开发——数据持久化OC篇&(三)对象归档

归档 iOS开发UI篇—ios应用数据存储方式(归档)  一.简单说明 在使用plist进行数据存储和读取,只适用于系统自带的一些常用类型才能用,且必须先获取路径相对麻烦: 偏好设置(将所有的东西都保存在同一个文件夹下面,且主要用于存储应用的设置信息) 归档:因为前两者都有一个致命的缺陷,只能存储常用的类型.归档可以实现把自定义的对象存放在文件中. 二.代码示例 1.文件结构 2.代码示例 YYViewController.m文件 1 // 2 // YYViewController.m 3 /

iOS开发——数据持久化OC篇&(七)CoreData高级常识

CoreData高级常识 关于CoreData貌似实际开发中很少用到,基本上是个有九个公司不会使用它,因为都说是性能不好,但是作为一个程序员,了解及其使用时必须了, 下面是我从一位大神那里搬过来的一下Core详细介绍,相信以后总有一天会帮我解决不少学习CoreData中的问题! 一.技术概览 1. Core Data 功能初窥 对于处理诸如对象生命周期管理.对象图管理等日常任务,Core Data框架提供了广泛且自动化的解决方案.它有以下特性. (注:对象图-Object graph的解释:在面

iOS开发——数据持久化OC篇&总结

数据持久化总结 1 //1.沙盒:/Users/nono/Library/Application Support/iPhone Simulator/5.1/Applications/2D135859-1E80-4754-B36D-34A53C521DE3 2 /** 3 // 1.获取程序的Home目录 4 NSString *home = NSHomeDirectory(); 5 NSLog(@"应用程序目录:%@", home); 6 7 // 2.获取Documents目录 8