现在有个单片机项目,需要做一个历史记录,每次发生此事件后存入SD卡,再进入到历史记录查询页面的时候,将SD卡的数据读出来显示到屏幕上,并且得按时间排序,最新的时间要显示在第一条
记录的内容格式是 序号 日期 /时间 /内容
比如是 1 2018-09-21 11:09 柜门打开
2 2018-09-20 11:09 柜门关闭
3 2018-09-19 11:09 xxxx
4 2018-09-18 11:09 xxxx
因为如果按照正常来说,随着时间的增长,SD卡也在保持正增长,这样从后往前读,读出来的就是正序了, 如果时间久了,SD卡容量满了,要删除掉最早之前的那条记录占得物理位置,再在此位置写入一条新纪录,
像这种情况就不知道怎么做了, 并且还有个问题, 如果后来时间校准了, 这也就乱了。
个人认为最好的办法是全部读出来然后按时间排序,但是没有做过这方面的数据结构,请教一下各位有经验的大佬们该怎么做,麻烦指点一下给个思路,非常感谢!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
序号只是显示的时候用的,实际存储的时候存这个序号没什么意义。
比如之前时间是2018-9-11,一直按这个时间存, 后来时间不准,把时间校准为2018-9-10,这样的话,再读出来后,就成了9-10日期的反而比9-11日期的还在前面显示了。
一周热门 更多>