前言

	public class NSUserDefaults : NSObject
  • 用来保存应用程序设置和属性、用户保存的数据。用户再次打开程序或开机后这些数据仍然存在。如果往 userDefaults 里存了一个可变数组,取出来的时候这个数组对象就变成了不可变的。

  • NSUserDefaults 可以存储的数据类型包括:NSData、NSString、NSNumber、NSDate、NSArray、NSDictionary。如果要存储其他类型,则需要转换为前面的类型,才能用 NSUserDefaults 存储。

  • NSUserDefaults 存储的数据存储在 Library/Preferences 文件夹中 Plist 文件中。

1、NSUserDefaults 的使用

	// 创建单例类对象
let userDefaults:NSUserDefaults = NSUserDefaults.standardUserDefaults()
  • 存放数据

    	// 存放数据
    userDefaults.setObject("I Love China", forKey: "string") // 同步数据,把数据持久化到 standardUserDefaults 数据库
    userDefaults.synchronize()
  • 读取数据

    	// 从 userDefaults 里查询数据
    let str:String = userDefaults.objectForKey("string") as! String
  • 删除数据

    	// 删除数据
    userDefaults.removeObjectForKey("string") // 同步数据
    userDefaults.synchronize()

iOS - Swift NSUserDefaults 数据存储的更多相关文章

  1. iOS - OC NSUserDefaults 数据存储

    前言 @interface NSUserDefaults : NSObject 用来保存应用程序设置和属性.用户保存的数据.用户再次打开程序或开机后这些数据仍然存在.如果往 userDefaults ...

  2. iOS - Swift PList 数据存储

    前言 直接将数据写在代码里面,不是一种合理的做法.如果数据经常改,就要经常翻开对应的代码进行修改,造成代码扩展性低.因此,可以考虑将经常变的数据放在文件中进行存储,程序启动后从文件中读取最新的数据.如 ...

  3. iOS Plist NSUserDefaults 数据存储

    @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...

  4. 李洪强iOS开发之数据存储

    李洪强iOS开发之数据存储 iOS应用数据存储的常用方式 1.lXML属性列表(plist)归档 2.lPreference(偏好设置) 3.lNSKeyedArchiver归档(NSCoding) ...

  5. iOS中的数据存储方式_Preference(NSUserDefaults)

    NSUserDefaults适合存储轻量级的本地数据,项目中,我会把一些简单的数据密码.网址.登陆状态BOOL.整型/浮点型数据等和用户有关的数据用它存储.但是它不能存储自定义的对象! 实例化一个 N ...

  6. ios中常见数据存储方式以及SQLite常用的语句

    在iOS中,根据不同的需求对应的有多种数据存储方式: 1.NSUserdefaults  将数据存储到沙盒中(library),方便易用,但是只能存储系统提供的数据类型(plist),不能存储自定义的 ...

  7. ios开发之数据存储

    iOS应用数据存储的常用方式 XML属性列表(plist)归档 Preference(偏好设置) NSKeyedArchiver归档(NSCoding) SQLite3 Core Data 应用沙盒 ...

  8. iOS学习笔记--数据存储

    iOS应用数据存储的常用方式 XML属性列表(plist)归档 Preference(偏好设置) NSKeyedArchiver归档(NSCoding) SQLite3 Core Data 1. XM ...

  9. NSUserDefaults数据存储

    前言 用来保存应用程序设置和属性.用户保存的数据.用户再次打开程序或开机后这些数据仍然存在. 如果往 userDefaults 里存了一个可变数组,取出来的时候这个数组对象就变成了不可变的. NSUs ...

随机推荐

  1. HDU 1520:Anniversary party(树形DP)

    http://acm.split.hdu.edu.cn/showproblem.php?pid=1520 Anniversary party Problem Description   There i ...

  2. shell基础二十篇 一些笔记

    shell基础二十篇 转自 http://bbs.chinaunix.net/thread-452942-1-1.html 研讨:Bash 内建命令 read (read命令更具体的说明见博客收藏的一 ...

  3. DevExpress.XtraGrid.Views.BandedGrid.BandedGridView

    使用的是DevExpress.XtraGrid.Views.BandedGrid.BandedGridView 类 没有在工具箱里找到对应控件 ,绕了一下,先创建一个gridcontrol ,然后gr ...

  4. Android onTouchEvent, onClick及onLongClick的调用机制

    针对屏幕上的一个View控件,Android如何区分应当触发onTouchEvent,还是onClick,亦或是onLongClick事件? 在Android中,一次用户操作可以被不同的View按次序 ...

  5. c# web 缓存管理

    using System; using System.Collections; using System.Text.RegularExpressions; using System.Web; usin ...

  6. js判断radio,checkbox是否选中

    从数据库循环数据,多选按钮数组 function type_1(){ //多选 var b= document.getElementsByName('service_zj_ids[]');  var ...

  7. The shortest problem

    The shortest problem Time Limit: 3000/1500 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others ...

  8. bnu A Matrix 北京邀请赛A题

    A Matrix Time Limit: 2000ms Memory Limit: 65536KB   64-bit integer IO format: %lld      Java class n ...

  9. iOS之地理位置及定位系统 -- 入门笔记

    这是因为xcode升级造成的定位权限设置问题.升级xcode6.xcode7以后打开以前xcode5工程,程序不能定位.工程升级到xcode6或xcode7编译时需要iOS8 要自己写授权,不然没权限 ...

  10. 修复跨站攻击 php

    在公用文件中加入如下代码 <?php /*云体检通用漏洞防护补丁v1.1 更新时间:2013-05-25 功能说明:防护XSS,SQL,代码执行,文件包含等多种高危漏洞 */ $url_arr= ...