gpt4 book ai didi

c++ - 在 Arduino ide 中读取多个文本文件

转载 作者:行者123 更新时间:2023-12-05 05:49:15 31 4
gpt4 key购买 nike

我有包含 n 个 txt 文件的文件夹(文件具有数值)我需要读取这些文件并将文件包含在数组中。如何读取数组中第一个file1的内容然后清除数组,然后读取同一个数组中的第二个file2等等?

#include "SPIFFS.h"
void setup() {
Serial.begin(115200);
float *arr=(float*)malloc(1000*sizeof(float));
if (!SPIFFS.begin(true)) {
Serial.println("An Error has occurred while mounting SPIFFS");
return;
}
File root = SPIFFS.open("/");
File file = root.openNextFile();
while(file){
for(int i=0;i<1000;i++){
arr[i] = file.parseFloat();
Serial.println(arr[i]);}
//Serial.println(file.name());
//file = root.openNextFile();
}
}

void loop() {}

最佳答案

你可以做类似的事情。尽管您需要检查 parseFloat() 在未检测到浮点值时的正确行为,即它实际返回的值。

while(file) {
int length = readFile(arr, file);
file.close();
handleArray(arr, length);
file = root.openNextFile();
}

...

int readFile(float *arr, File f) {
int i = 0;
float val = 0.0;
val = f.parseFloat(); // returns 0.0 when no float was found?
while (val > 0.0) {
arr[i++] = val;
val = f.parseFloat();
}
return i;
}

关于c++ - 在 Arduino ide 中读取多个文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70677792/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com