Удаление txt файла =
- Войдите на сайт для отправки комментариев
Доброго времени суток, прошу помочь или разъяснить, в чем причина неудачи.
Создаю на microsd карте txt файл, записываю туда значение переменной, после этого закрываю файл и пытаюсь его удалить (скетч "пристрелочный", будет являться частью другой программы). Файл, наполненный какими то данными не удаляется. Если создать пустой txt, удалить его выходит. Прошу подсказать что может идти не так и как удалить заполненный txt файл с флешки... (скетч ниже).
#include
#include
File myFile;
// Назначаем пины
int CS_pin = 9;
void setup() {
Serial.begin(9600);
pinMode(CS_pin, OUTPUT);
if (!SD.begin(CS_pin)) {
Serial.println("Card Failure");
return;
}
Serial.println("Card Ready");
texts();
if(SD.exists("wtime.txt")){
SD.remove("wtime.txt");
Serial.print("delete");
void loop() {
}
void texts(){
Serial.println("запись");
float dataString = 1119;
File logFile = SD.open("wtime", FILE_WRITE);
if (logFile) {
logFile.println(dataString);
logFile.close();
Serial.println(dataString);
}
Для начала, вставьте код правильно. В нём должны быть номера строк, иначе как его прикажете обсуждать? Прочитайте раздел "Песочница" там всё написано.
К сожалению не вижу кнопки "редактировать" по этому вставлю код сюда
И где SD объявляется?
И где SD объявляется?
В 12, не?
Имхуется мне, что если файл лежит в корне, то он не wtime.txt а /wtime.txt
И почему пишите в один файл, а удаляете другой?
В 12 вижу инициализацию, а не объявление. Не?)
И почему пишите в один файл, а удаляете другой?
согласен на 100500 процентов.
Ошибка при переносе текста, пробовал различные вариации с разными именами файла. Без слеша в названии, он чудесно записывается, докидывает значения и читается, но не удаляется, думаете слеш поможет?
В 20 21 и 31 имена файлов совпадают по Вашему мнению? И код не полный, объявления SD я не вижу.
В 12 вижу инициализацию, а не объявление. Не?)
Не знаю как на ардуине, на ЕСП этого достаточно.
Ошибка при переносе текста, пробовал различные вариации с разными именами файла. Без слеша в названии, он чудесно записывается, докидывает значения и читается, но не удаляется, думаете слеш поможет?
Я не очень умею думать. Компенсирую чтением SD.cpp и FS.cpp.
В 12 вижу инициализацию, а не объявление. Не?)
Не знаю как на ардуине, на ЕСП этого достаточно.
Могу предположить, что она уже объявлена в библиотеке. Но с sd сам не работал. Пофиг, опустим это.
Как Вы сказали, вангую 20 21 и 31 всему цимус.
Могу предположить, что она уже объявлена в библиотеке.
Да.
Да не совпадают, но это ошибка при переносе текса на форум(не знаю почему так) в скетче все верно, файл везде называется одинаково-"wtime.txt"
Да не совпадают, но это ошибка при переносе текса на форум(не знаю почему так) в скетче все верно, файл везде называется одинаково-"wtime.txt"
Какой у нас продвинутый форум ))))))) чотаржу
Не очень понял Ваше замечание. но все равно спасибо
А в какой файловой системе отформатирована флешка?
Дон намекает, что не очень верит в Ваше сообщение №14. Я, кстати, тоже. Выложите на форум именно тот код, который вызывает у Вас проблемы.
FAT 16
Почему именно fat16? Ее уже (вроде) даже винда старше висты не поддерживает. Это же пережиток пережитка. Хотя бы fat32.
В шпаргалках из тырнетов указана FAT16, по этому так и отформатировал карту
Хотя бы fat32.
FAT32 единственный вариант для данного случая. Хотя есть другие библиотеки, там и exFat поддерживается.
В шпаргалках из тырнетов указана FAT16, по этому так и отформатировал карту
Посмотрите размер карты, если она больше 4 ГБ, то FAT16 не очень вариант. Ну и как указали выше, для совместимости с виндой тоже
Спасибо, попробую FAT32
Объем 2 GB
Заработало с одинаковыми именами?
К сожалению нет) пишет и читает но не удаляет, как изначально и было описано
Смотрю и никак не могу понять строку 22. Это Форум вам дописал?
К сожалению нет) пишет и читает но не удаляет, как изначально и было описано
У меня все заработало. После исправления ошибок ))
Те файл удаляется? Как настроена SD?
И да, ошибки исправил только те, которые мешали компиляции. Прочие ляпы сами почистите. И инициализацию свою в SD.begin() не забудьте вернуть, я для ESP компилировал
Настройка тут не важна, просто пропишите во всех трех местах полный путь к файлу одинаково
Те файл удаляется? Как настроена SD?
SD тут не причем. Все удаляется
Благодарю за помощь, всенепременно попробую
И да, на будущее. Про SD.mkdir(). Везде пишут Create a directory on the SD card. This will also create any intermediate directories that don't already exists; e.g. SD.mkdir("a/b/c") will create a, b, and c.
Так вот, нифига подобного. Если нужно создать /aa/aa/cc, то только по очереди:
mkdir("/aa");
mkdir("/aa/bb");
mkdir("/aa/bb/cc");
Актуально для текущей версии библы
Спасибо за совет, создавать сложные пути не планирую, хочу просто сохранять инф срабатываний устройства, и хранить некоторые переменные, но так как с arduino это первый опыт, потребовался совет. Еще раз благодарю
Благодарю за помощь, всенепременно попробую
а сразу что не попробуете?