电子说
今天我们学习合宙低功耗4G模组Air780EP的fskv开发示例。
功能 | fskv | fdb |
---|---|---|
value长度 | 4096 | 255 |
key长度 | 63 | 64 |
空间利用率(对比) | 较低 | 较高 |
读取速度 | 恒定 | 脏数据影响速度,非恒定 |
写入数据 | 恒定 | 脏数据影响速度,非恒定 |
均衡擦除 | 自动 | 自动 |
2.1 Air780EP开发板一套
详细API介绍见:fskv-API
fskv.init()
参数
无
返回值
返回值类型 | 解释 |
---|---|
boolean | 成功返回true,否则返回false |
fskv.set(key, value)
参数
传入值类型 | 解释 |
---|---|
string | key的名称,必填,不能空字符串 |
string | 用户数据,必填,不能nil, 支持字符串/数值/table/布尔值, 数据长度最大4095字节 |
返回值
返回值类型 | 解释 |
---|---|
boolean | 成功返回true,否则返回false |
fskv.sett(key, skey, value)
参数
传入值类型 | 解释 |
---|---|
string | key的名称,必填,不能空字符串 |
string | table的key名称, 必填, 不能是空字符串 |
string | 用户数据,必填,支持字符串/数值/table/布尔值, 数据长度最大4095字节 |
返回值
返回值类型 | 解释 |
---|---|
boolean | 成功返回true,否则返回false/nil |
fskv.get(key, skey)
参数
传入值类型 | 解释 |
---|---|
string | key的名称,必填,不能空字符串 |
string | 可选的次级key,仅当原始值为table时有效,相当于 fskv.get(key)[skey] |
返回值
返回值类型 | 解释 |
---|---|
any | 存在则返回数据,否则返回nil |
fskv.del(key)
参数
传入值类型 | 解释 |
---|---|
string | key的名称,必填,不能空字符串 |
返回值
返回值类型 | 解释 |
---|---|
bool | 成功返回true,否则返回false |
fskv.clear()
参数
无
返回值
返回值类型 | 解释 |
---|---|
bool | 成功返回true,否则返回false |
fskv.iter()
参数
无
返回值
返回值类型 | 解释 |
---|---|
userdata | 成功返回迭代器指针,否则返回nil |
fskv.next(iter)
参数
传入值类型 | 解释 |
---|---|
userdata | fskv.iter()返回的指针 |
返回值
返回值类型 | 解释 |
---|---|
string | 成功返回字符串key值, 否则返回nil |
fskv.status()
参数
无
返回值
返回值类型 | 解释 |
---|---|
int | 已使用的空间,单位字节 |
int | 总可用空间, 单位字节 |
int | 总kv键值对数量, 单位个 |
由上图可以看出,fskv支持存放布尔,数值,小数,字符串,等均可。还可以存放table类型的值。但不能存放nil, function, userdata, task类型的值。
不同的flash互不影响。
审核编辑 黄宇
全部0条评论
快来发表一下你的评论吧 !