本帖最后由 wjqqq 于 2019-7-16 15:46 编辑
txt原始数据
现在已经把txt存在了sd卡中,数据之间用空格分开,但是fatfs库里只有打开、读文件这种函数,所以只能把数据以字符串的形式读进来,不能存成一位数组。
c语言里一般用fscanf能很容易做这个事,但是fscanf函数第一个输入参数是FILE *类型,而stm32的fatfs库里用的是FIL*类型,好像不能用。
使用sscanf切割比较短的数据是可以的:
这样可以把四个数据存到长度为4的一位数组中,但是这样数据多达几千几万的话,肯定就不行了。
因此我在for循环中使用sscanf,可能是以前没用过所以在哪里出错了吧,读四个数据,结果是数组每个元素都是第一个数据:
所以想请问大家,该怎么用sscanf或fscanf完成大量数据切分存成数组呢?或是有其他方法也行。
更新:
已经找到使用sscanf完成分割存为数组功能的方法,没有fscanf好用,必须得先把数据读到缓冲区,朋友们有其他想法也可以告诉我。
一周热门 更多>