本地存储
本地存储是待办事项 App 保障用户数据持久保存的重要环节。
常用存储方式
UserDefaults
适合存储简单数据,使用方便,但不适合大量数据。
func saveTodos(_ todos: [TodoItem]) {
if let encoded = try? JSONEncoder().encode(todos) {
UserDefaults.standard.set(encoded, forKey: "todos")
}
}
func loadTodos() -> [TodoItem] {
if let data = UserDefaults.standard.data(forKey: "todos"),
let todos = try? JSONDecoder().decode([TodoItem].self, from: data) {
return todos
}
return []
}
`
文件存储
适合存储结构化数据,使用文件系统保存 JSON 或自定义格式。
func getDocumentsDirectory() -> URL {
FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)[0]
}
func saveToFile(_ todos: [TodoItem]) {
let url = getDocumentsDirectory().appendingPathComponent("todos.json")
if let data = try? JSONEncoder().encode(todos) {
try? data.write(to: url)
}
}
func loadFromFile() -> [TodoItem] {
let url = getDocumentsDirectory().appendingPathComponent("todos.json")
if let data = try? Data(contentsOf: url),
let todos = try? JSONDecoder().decode([TodoItem].self, from: data) {
return todos
}
return []
}
CoreData(进阶)
对于复杂数据和关系型数据,可以使用 CoreData 提供更强大的持久化支持。
小结
选择合适的本地存储方式,保障数据安全和访问效率,是待办事项 App 开发的重要环节。
相关内容
- 什么是 Swift? Swift 是 Apple 推出的现代编程语言,专为 iOS、macOS、watchOS 与 tvOS 应用开发而设计,语法简洁、安全高效,广泛应用于移动开发与...
- Swift 与 Objective-C 的比较 Swift 与 Objective-C 都是 Apple 推出的开发语言,前者强调安全与现代化,后者历史悠久且成熟。了解两者异同有助于更好地选择开发工具。
- 安装 Xcode 与 Playground 本章介绍如何安装 Xcode 和使用 Swift Playground 进行基础练习,适合 Swift 初学者快速上手,无需搭建复杂环境即可体验代码编写与运行。
- Swift 的发展历史和现状 Swift 作为 Apple 推出的现代编程语言,经历了快速的发展和演进,现已成为 iOS、macOS 等平台主流开发语言,拥有活跃的社区和广泛的应用。
- 变量与常量 本章介绍 Swift 中变量与常量的定义与使用,帮助理解数据存储与修改的基本概念,是掌握 Swift 编程的基础。
- 数据类型 本章讲解 Swift 中的基本数据类型,包括整数、浮点数、布尔值和字符串,帮助理解变量和常量的数据存储与操作方式。