iOS中本地儲存

2021-06-22 16:54:22 字數 2202 閱讀 7131

用於儲存建立工程時 開發過程中 所新增的檔案或**等所有內容

開發過程中可以修改資料夾的內容 在執行過程中不可以修改

2 documents

在整個應用程式的生命週期內  將程式的資料存到蘋果官方的資料中 一般儲存資料庫

3 library

存放快取

4tmp 

臨時性儲存

向本地儲存資料的過程

系統自帶的資料型別儲存: {

直接儲存 獲得儲存路徑-新增字尾-儲存

直接讀取 獲得儲存路徑- 根據字尾找到完整路徑-讀取 }

自定義型別的資料儲存: {

自定義類遵循 nscoding協議

實現協議的方法

儲存:給自定義型別加碼**化為nsdata型別)-獲得儲存路徑-新增字尾-通過nsdata型別儲存

讀取:獲得儲存路徑- 根據字尾找到完整路徑-讀取資料(用nsdata型別接收)-解碼(將nsdata型別轉換為自定義型別)

#import

@inte***ce mainviewcontroller : uiviewcontroller

@end

#import "mainviewcontroller.h"

#import "student.h"

@inte***ce mainviewcontroller ()

@end

@implementation mainviewcontroller

- (void)dealloc

- (id)initwithnibname:(nsstring *)nibnameornil bundle:(nsbundle *)nibbundleornil

return self; }

- (void)loadview

- (void)viewdidload

- (void)searchdocumentpath

- (void)writestring

}- (void)readstring

- (void)writearray

- (void)readarray

- (void)writedic

- (void)readdic

- (void)addwritestring

//nsdata

- (void)writedata

- (void)readdata

- (void)writeuserdefaults

- (void)readuserdefaults

//複雜型別物件儲存

//歸檔即將自己建立的model類物件轉換為二進位制格式通過二進位制格式進行儲存

- (void)archiveobject

//解檔將歸檔後的二進位制檔案解檔為相對應的model型別物件

- (void)unarchiveobject

@end

#import

@inte***ce student : nsobject

@property (nonatomic,retain) nsstring *name;

@property (nonatomic,retain) nsstring ****;

@property (nonatomic,assign) nsinteger age;

//- (id)initwithname : (nsstring *)name *** : (nsstring *)*** age : (nsinteger)age;

//+ (id)studentwithname :(nsstring *)name *** : (nsstring *)*** age : (nsinteger)age;

@end

#import "student.h"

@implementation student

- (void)dealloc

- (id)init

return self;

}//序列化或歸檔協議

- (void)encodewithcoder:(nscoder *)acoder

//解檔或反序列化

- (id)initwithcoder:(nscoder *)adecoder

return self;

}@end

IOS中的本地儲存

資料本地儲存的本質其實就是把資料儲存成檔案,儲存到程式的沙盒中.ios中的沙盒機制是一種安全機制 沙盒的本質 其實也是資料夾 通常沙盒中包含四個資料夾bundle,document,library,tmp 1.bundle bundle裡面存放的是 資源檔案 和配置檔案.注 內容在程式執行期間為唯讀...

Ios本地儲存(筆記)

乙個應用程式包含以下三個檔案 nsbundle 包 nsbundle資料夾 用來儲存建立工程時候,或者是開發時候所新增的檔案和 也就是工程中左面所有多東西 在 執行的過程中,裡面的所有東西是全都不能修改。documents資料夾 儲存的是在整個應用程式生命週期內一直存在的內容 5g以內 libray...

iOS專案本地儲存NSUserDefault的改進

隨著專案的體積增加,功能增多,從一開始幾個地方使用。到多個地方使用,甚至有幾十處,反正就是有需要的時候就拿來用一下,反正a和b同時管理專案的時候注意儲存時存入不同的key值就可以了。但是這樣至少讓專案看起來不美觀,整理的時候有一種雜亂的感覺,有的同學說,那我用乙個管理類統一管理。把setvaluef...