乐鑫技术交流
直播中

余温重顾

9年用户 890经验值
擅长:可编程逻辑 嵌入式技术 EMC/EMI设计
私信 关注
[问答]

如何从SD卡中读取JSON格式?

我想从SD卡中读取JSON格式,但是每个长度都不一样。并读取度固定行或指定从某行开始,转换为NEW JSON struct。
我应该怎么做?
文件内容:
{"DeviceID":"ESP8266","Data":{"Serial":0,"Temp":26,"Hum":32,"time":"082855"}}
{"DeviceID":" ESP8266","Data":{"Serial":1,"Temp":NULL,"Hum":NULL,"Time":":082955"}}
{"DeviceID":"ESP8266","Data":{ "Serial":2,"Temp":25.5,"Hum":32.6,"Time":"083055"}}
{"DeviceID":"ESP8266","Data":{"


{"DeviceID":"ESP8266","Data":{"Serial":6,"Temp":25.3,"Hum":29.6,"Time":"083655"}}
步骤:
1.从 SD 读取 JSON 文件卡片。
2.一次读取一行,转换完成后读取下一行。示例:我第一次读取 1 到 5 行,下次读取 6 到 10 行的数据。
3.像这样的新 JSON 结构:
代码:
#include "SD.h"
#include "FS.h"
#define SD_CS 15
StaticJsonDocument <1024> doc;
归档我的文件;
void loadData(){
File file = SD.open("myTest.txt", FILE_READ);
DeserializationError error = deserializeJson(doc, file);
  如果(错误)
        Serial.println(F(“


序列号.begin(115200);
序列号.println();
序列号.println();
Serial.printf("SD 卡开始...n");
  if (!SD.begin(SD_CS)){
    Serial.printf("SD 卡安装失败...n");
    }   
  else{
      Serial.printf("SD卡已经...n");
      }
Serial.println();
加载数据();
}
无效循环(){
}

更多回帖

发帖
×
20
完善资料,
赚取积分