как прочитать всю строку, кроме первой?
есть ли способ читать только вторую до последней строки, кроме первой строки?
вот мой пример кода
File myFile;
char cr;
void setup() {
// Открытие последовательной связи и ожидание открытия порта:
Serial.begin(9600);
while (!Serial) {
; // ждем подключения последовательного порта. Требуется только для собственного порта USB
}
Serial.print("Initializing SD card...");
if (!SD.begin(4)) {
Serial.println("initialization failed!");
while (1);
}
Serial.println("initialization done.");
// повторно открываем файл для чтения:
myFile = SD.open("test.txt");
if (myFile) {
Serial.println("test.txt:");
// читаем из файла, пока в нем ничего не останется:
while (myFile.available()) {
Serial.write(myFile.read());
}
// закрываем файл:
myFile.close();
} else {
// если файл не открылся, выводим ошибку:
Serial.println("error opening test.txt");
}
}
void loop() {
// после установки ничего не происходит
}
@awesome23, 👍1
2 ответа
Лучший ответ:
▲ 3
пропустить первую строку
bool firstLine = true;
while (myFile.available()) {
int c = myFile.read();
if (firstLine) {
if (c == '\n') {
firstLine = false;
}
} else {
Serial.write(c);
}
}
,
@Juraj
▲ 3
Почему бы вам не прочитать первую строку, игнорировать их и запустить while следующим образом:
while (myFile.available() && (myFile.read() != '\n') {}; // Empty while body
while (myFile.available()) {
Serial.write(myFile.read());
}
,
@Michel Keijzers
Смотрите также:
- Как использовать SPI на Arduino?
- Как решить проблему «avrdude: stk500_recv(): programmer is not responding»?
- Как создать несколько запущенных потоков?
- Как подключиться к Arduino с помощью WiFi?
- avrdude ser_open() can't set com-state
- Как узнать частоту дискретизации?
- Что такое Serial.begin(9600)?
- Я закирпичил свой Arduino Uno? Проблемы с загрузкой скетчей на плату
@Майкл как мне заблокировать/пропустить первую строку и прочитать вторую строку до последней?, @awesome23
Прочитайте первую строку и не используйте ее, как в коде выше., @Michel Keijzers
myFile.read(); читает только один байт/символ, @Juraj
@Juraj Спасибо, я улучшил свой ответ соответствующим образом., @Michel Keijzers
и для чего нужен тест endOfLineFound во втором while?, @Juraj
@Juraj Он действительно не нужен, поэтому его можно удалить без каких-либо функциональных изменений. Спасибо еще раз. Также я удалил переменную для условия while., @Michel Keijzers