FMDB之数组、字典的存储

数据库存储往往以字符串的形式存储数据,FMDB存储字典或数据的时候,也需要将其转换为字符串存储到sqlite里,如果不将其转换为json格式存储,当你查询数据库获取数据的时候将会获取到无法转换成字典或数组的字符串。

转换json存储:

NSArray *dataArray = (NSArray *)dic[@"pic"];

NSError *err = nil;

NSData *jsonData = [NSJSONSerialization dataWithJSONObject:picArr options:NSJSONWritingPrettyPrinted error:&err];

NSString *jsonStr = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];

获取用第三方包 JSONKIT转换数组或字典

FMResultSet *set = [app.db executeQuery:@"SELECT * FROM CACHE"];

while ([set next]) {

NSString *str  = [set stringForColumn:@"IMGURL"];

//第三方包jsonKit转换

NSArray *arr =(NSArray *)[str objectFromJSONString];

}

时间: 2024-10-24 15:04:55

FMDB之数组、字典的存储的相关文章

[Effective JavaScript 笔记]第46条:使用数组而不要使用字典来存储有序集合

对象属性无序性 js对象是一个无序属性集合. var obj={}; obj.a=10; obj.b=30; 属性a和属性b并没有谁前谁后之说.for...in循环,先输出哪个属性都有可能.获取和设置不同的属性与顺序无关,都会以大致相同的效率产生相同的结果.也就是说访问属性a和访问属性b,没有哪个访问更快之说.ES标准并未规定属性存储的任何特定顺序,甚至于枚举对象也未涉及.for...in循环会挑选一定的顺序来枚举对象的属性,标准允许js引擎自由选择一个顺序,它们的选择会微妙地改变程序行为.如要

C#创建安全的字典(Dictionary)存储结构

在上面介绍过栈(Stack)的存储结构,接下来介绍另一种存储结构字典(Dictionary). 字典(Dictionary)里面的每一个元素都是一个键值对(由二个元素组成:键和值) 键必须是唯一的,而值不需要唯一的,键和值都可以是任何类型.字典(Dictionary)是常用于查找和排序的列表. 接下来看一下Dictionary的部分方法和类的底层实现代码: 1.Add:将指定的键和值添加到字典中. public void Add(TKey key, TValue value) {        

数组字典结合删除排序2 描述器

// //  main.m //  数组字典结合删除排序 // //  Created by 博博 on 16/1/8. //  Copyright (c) 2016年 com.bb. All rights reserved. // #define NSLog(FORMAT, ...) printf("%s\n", [[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String]) #import <Foundation

Java数组逆序存储

package review01; import java.util.Arrays; public class review01 { public static void main(String[] args) { method(); } private static void method() { // 数组逆序存储 int[] arr = { 2, 0, 1, 6, 1, 2, 0, 7, 2, 0, 1, 2, 3, 3 }; for (int s = 0, e = arr.length

NSNumber(把数字存进数组字典等的问题)

官方文档地址https://developer.apple.com/library/ios/documentation/Cocoa/Reference/Foundation/Classes/NSNumber_Class/Reference/Reference.html NSUInteger是无符号的整型, NSInteger是有符号的整型,在表视图应用中常见 NSUInteger row= [indexPath row];因为这是显示tableViewCell有多少个,只能是非零整数的,也就是说

.net Mvc Controller 接收 Json/post方式 数组 字典 类型 复杂对象

原文地址:http://www.cnblogs.com/fannyatg/archive/2012/04/16/2451611.html ------------------------------------------------------------------------------------------------------------------ Asp.net Mvc Controller Json数组接收数组字典 类型 复杂对象 方法一,(最复杂的方法)扩展ModelBin

【iOS开发-44】通过案例谈iOS代码重构:合并、格式化输出、宏变量、利用数组字典存储数据,以及利用plist的终极知识

首先我们今天的案例就是如下5个页面通过上一张下一张来切换: (1)第一步,基本是以很傻很直接的方式来创建,这里用到的主要点有: --把对象变量设置为全局变量使得可以在其他方法中调用来设置它们的属性 --设置了一个全局变量index,默认是0,然后通过增加减少这个index值并结合switch来调用不同的数据. --利用先调用一次change方法初始化页面,使得页面定格在第一帧. --利用按钮的enabled属性来设置按钮是否可以被点击,然后结合index的值分别在第1张和第5张时分别把上一张和下

数组使用NSUserDefaults存储的问题,

最近在做搜索记录的时候,由于搜索记录是存储在本地的,而且都是字符串,我考虑到数据量也不是太大,于是就懒的使用数据库了. 于是就想到了NSUserDefaults 存储的方式, 但是由于之间对于数组没有这样保存过,也没有考虑太多,就直接: [[NSUserDefaults standardUserDefaults]setObject:self.searchHistoryDataArr forKey:@"SEARCHHISTORYDATA"]; [[NSUserDefaults stand

写入文件 (字符串/ 数组 / 字典)

获取文件路径- (NSString *)getFilePath{         2.获取所要存储的文件路径           (1)获取Documents文件夹路径             NSDocumentDirectory 用来获取指定文件夹的路径             NSUserDomainMask 设置查找的域,我们的自己的文件都是存储在用户域的             @param yes 是否使用详细路径(绝对路径)             @return 因为最初该方法是