Чтение текста построчно с SD
Почему следующий код возвращает эту ошибку? Как мне это сделать?
Ошибка: статус выхода 1, недопустимое преобразование из 'const char*' в 'char' [-fpermissive]
#include "FS.h"
#include "SD.h"
#include "SPI.h"
void setup() {
Serial.begin(115200);
if (!SD.begin(33)) {
Serial.println("Card Mount Failed");
} else {
Serial.println("Card Mount Succeeded");
}
File offline = SD.open("/offlineLog.txt", FILE_READ);
while (offline.available()) {
String line = offline.readStringUntil("\n");
Serial.println(line);
}
}
В документации сказано, чтоstream.readStringUntil возвращает строку...
@Daemach, 👍1
1 ответ
Лучший ответ:
▲ 2
Ошибка не имеет ничего общего с тем, что возвращает readStringUntil. Это связано с тем, какие параметры он принимает.
Функция ожидает, что будет найден один символ. Вместо этого вы передаете ему строку (строку C), содержащую один символ.
В C вы представляете строку (char *) с помощью "" и один символ (char) с помощью ' '.
Поскольку readStringUntil ожидает char, а не char *, вам необходимо использовать '':< /п>
String line = offline.readStringUntil('\n');
,
@Majenko
Смотрите также:
- Arduino создает массив Json с двойными значениями и 2 десятичными знаками
- Ошибка при компиляции программы для esp32 с Preferences.h
- Как настроить пул DHCP для ESP-WIFI-MESH?
- Функция запуска при срабатывании
- Использование WiFiServer в режиме блокировки
- Можно ли получить значения только во время вибрации/движения с акселерометра (ADXL335/MPU6050)?
- Отправка данных через LoRa с помощью ESP32-E
- Лучшая модель данных/концепция для хранения многодневного будильника для часов?
Спасибо! Хотелось бы, чтобы сообщение об ошибке было более наглядным., @Daemach