你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> iOS sqlite3保存數組NSArray

iOS sqlite3保存數組NSArray

編輯:IOS開發綜合
四個注意點:
1.創建表時,聲明字段類型為二進制 blob
NSString *INEditorTableName = @"create table In_Editor(picUrls blob not null)";

2.插入sql語句,把NSArray轉換為NSData類型
NSData *dataImageUrls = [NSKeyedArchiver archivedDataWithRootObject:model.imageUrls];

3.不能用 [NSString stringWithFormat: @"sql"];
[_db executeUpdate: @"insert into In_Editor ( picUrls) values (?);",dataImageUrls];

4.讀取數據: NSArray *imageArr = [NSKeyedUnarchiver unarchiveObjectWithData:picUrls]

// 如果不注意,上面幾點,可能會出現下面錯誤:
* Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFData objectForKey:]: unrecognized selector sent to instance 0x6b46c80'

 

 

注:
NSArray 與 NSData的相互轉換 二進制
將NSArray轉化為NSData類型 :NSData *data = [NSKeyedArchiver archivedDataWithRootObject:Array];
將NSData轉化為NSArray類型 :NSArray *array = [NSKeyedUnarchiver unarchiveObjectWithData:data];

Integer:值是signedinteger類型,大小可以是1,2,3,4,6,8bytes
REAL:浮點類型
TEXT:以UTF-8,UTF-16BEorUTF-16LE編碼存儲的字符類型
BLOB:二進制數據
 

 

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved