Мммм... читает. В переменную. Блок длинной в переменную! тоесть если simvol равем 20 байтам. То он будет читать блоки по 20 байтов. Помещая результат каждого чтения в simvol ( затирая предыдущее чтение) While пока файл не кончится.
myFile.read(simvol, sizeof(simvol)); // отсчитываем 20 символов
Puhlyaviy пишет:
Puhlyaviy пишет:
Мммм... читает. В переменную. Блок длинной в переменную! тоесть если simvol равем 20 байтам. То он будет читать блоки по 20 байтов. Помещая результат каждого чтения в simvol ( затирая предыдущее чтение) While пока файл не кончится.
myFile.read(simvol, sizeof(simvol)); // отсчитываем 20 символов
Puhlyaviy пишет:
Puhlyaviy пишет:
Мммм... читает. В переменную. Блок длинной в переменную! тоесть если simvol равем 20 байтам. То он будет читать блоки по 20 байтов. Помещая результат каждого чтения в simvol ( затирая предыдущее чтение) While пока файл не кончится.
не могли бы вы код показать? помогите пожалуйста. когда виден код будет тогда все станет на свои места и все понятно будет
кода не будет. это безсмысленно. вы не можете даже понять что делает ваш собственный код. так что врятли поймете что делает чужой код. продолжайте играть в угадайку
вот тока одно не понятно почему вы затыкали других людей которые хотели помочь?
Я затыкал тех кто хотел помочь? У вас и так каша в голове при попытке реализовать самый примитивный вариант. А если добавить еще и функции библиотек.. гыыыы.
я пасс.
ИМХО. Но у вас уровень логического мышления примерно где то ребенок 5 лет. Либо вы мастерски прикидываетесь дебилом.
// объявление массива начал строк
#define MAX_STRS 365
int filestrs [MAX_STRS]; // резервируем целых 730 байт. Нужно смотреть за расходом ОЗУ.
int firststr_disp=0; // номер первой строки на дисплее
int lastfilestr=0 // количество строк в файле
......
// Заимствовано, заполнение файла.
// Предполагается, что файл при этом создается, а не дописывается.
if(outoffbt == HIGH){
while(var < MAX_STRS){
myFile = SD.open("test.txt", FILE_WRITE);
if (myFile) {
Serial.print("Writing to test.txt...");
filestrs[lastfilestr]=myFile.position();
myFile.print(rtc.getDateStr());
myFile.print(" ");
myFile.print(rtc.getTimeStr());
myFile.print(" ");
myFile.println(obsh_nastrel);
lastfilestr++;
myFile.close();
Serial.println("done.");
} else {
// if the file didn't open, print an error:
Serial.println("Error writing");
}
var++;
}
}
// где-то в loop()
// отображаем две строки файла
myFile = SD.open("test.txt");
if (myfile)
{
myfile.seek(filestrs[firststr_disp]);
char tmpstr[20];
char tmpstrlen=0;
while (myfile.available()) { // читаем первую строку
tmpstr[tmpstrlen]=myfile.read();
if ((tmpstr[tmpstrlen]=='\n')||(tmpstr[tmpstrlen]=='\r')) break;
tmpstrlen++;
}
lcd.setCursor(0,0);
lcd.print(tmpstr);
tmpstrlen[tmpstrlen]=0;
while (myfile.available()) { // гоним до следующей строки, пока не пропустим все переводы строки
char ch=myfile.read();
if ((ch!='\n')&&(ch!='\r')) break;
}
tmpstrlen=0;
while (myfile.available()) {// читаем вторую строку
tmpstr[tmpstrlen]=myfile.read();
if ((tmpstr[tmpstrlen]=='\n')||(tmpstr[tmpstrlen]=='\r')) break;
tmpstrlen++;
}
tmpstrlen[tmpstrlen]=0;
lcd.setCursor(0,1);
lcd.print(tmpstr);
myFile.close();
}
// обрабатываем кнопки
if (нажата кнопка вверх)
{
if (firststr_disp>0) firststr_disp--;
}
if (нажата кнопка вниз)
{
if (firststr_disp<MAX_STRS-1) firststr_disp++; // если уже стоим на предпоследней строке, дальше двигаться нельзя.
}
насколько я понял да, считывает файл и отсчитывает символы
насколько я понял да, считывает файл и отсчитывает символы
myFile.read(simvol,
sizeof
(simvol));
// отсчитываем 20 символов
у меня есть большой сундук с кучей мешочков уложеных попорядку...
мне нужен мешочек номер 20
я открываю сундук
достаю первый мешочек
проверяю что это не 20 мешочек который мне нужен
достаю второй мешочек
проверяю что это не 20 мешочек который мне нужен
....
....
достаю 20 мешочек
проверяю что это 20 мешочек
беру его
закрываю сундук
выставляю 20 мешочек на витрину ( НЕ НОМЕР ЕГО ПОРЯДКОВЫЙ, А САМ МЕШОЧЕК)
насчет этого я понял), я не понимаю програмно как реализовать это
я достаю мешочек со всем его содержимым
myFile.read(simvol,
sizeof
(simvol));
// отсчитываем 20 символов
насчет этого я понял), я не понимаю програмно как реализовать это
для вас скорее всего никак. бросьте его нафиг. лучше вон попробуйте стихи писать
стихи не интересно, ардуинки куда интересней
не могли бы вы код показать? помогите пожалуйста. когда виден код будет тогда все станет на свои места и все понятно будет
не могли бы вы код показать? помогите пожалуйста. когда виден код будет тогда все станет на свои места и все понятно будет
кода не будет. это безсмысленно. вы не можете даже понять что делает ваш собственный код. так что врятли поймете что делает чужой код. продолжайте играть в угадайку
myFile.read(stroka,
sizeof
(simvol));
ладно спасибо за помощь, попытаю счастья на других форумах
вот тока одно не понятно почему вы затыкали других людей которые хотели помочь?
вот тока одно не понятно почему вы затыкали других людей которые хотели помочь?
Я затыкал тех кто хотел помочь? У вас и так каша в голове при попытке реализовать самый примитивный вариант. А если добавить еще и функции библиотек.. гыыыы.
я пасс.
ИМХО. Но у вас уровень логического мышления примерно где то ребенок 5 лет. Либо вы мастерски прикидываетесь дебилом.
вот тока одно не понятно почему вы затыкали других людей которые хотели помочь?
у Пухлявого своя секретная метода индивидуального геноцыда новичков.
да судя по всему так и есть много тем с его участием на форуме перечитал, везде исход один
если не понимает человек можно же как то на примере показать, обьяснить, именно на примере кода а не на мешочках)
да судя по всему так и есть много тем с его участием на форуме перечитал, везде исход один
верно - остаются психологически устойчивые.
вот подсказали
но всетаки хотелось бы разобраться с этим:
завели переменные
СТРОКА - хранит общее количество строк
СтрокаНаПечать - хранит номер первой строку на дисплее. при запуске равно 1
ТекущаяСтрока - хранит строчку которую печатаем
открыли файл
сделали цикл по общему подсчету строк
закрыли файл
процедура по извлечению нужной строки
получили номер строки в переменной Строка_на_печать
открыли файл
отсчитали до нужной переменной
вернули переменную ТекущаяСтрока
начали луп
Есть желающие помочь?
Желающие помочь - есть, но вы правильно сообразили: НЕ НА ЭТОМ ФОРУМЕ. Например тут могут помочь robocraft.ru или тут cyber-place.ru
Этот форум успешно решает задачи выноса Ардуино из пользования ... видимо такая вот "конкурентная борьба" ... иных причин - НЕ ВИЖУ.
Этот форум успешно решает задачи выноса Ардуино из пользования ... видимо такая вот "конкурентная борьба" ... иных причин - НЕ ВИЖУ.
всегда таким задаю конкретный вопрос:Arhat109, а вы когда начнёте уходить с этого форума?
Этот форум успешно решает задачи выноса Ардуино из пользования ... видимо такая вот "конкурентная борьба" ... иных причин - НЕ ВИЖУ.
всегда таким задаю конкретный вопрос:Arhat109, а вы когда начнёте уходить с этого форума?
но всетаки хотелось бы разобраться с этим:
завели переменные
СТРОКА - хранит общее количество строк
СтрокаНаПечать - хранит номер первой строку на дисплее. при запуске равно 1
ТекущаяСтрока - хранит строчку которую печатаем
открыли файл
сделали цикл по общему подсчету строк
закрыли файл
процедура по извлечению нужной строки
получили номер строки в переменной Строка_на_печать
открыли файл
отсчитали до нужной переменной
вернули переменную ТекущаяСтрока
начали луп
Есть желающие помочь?
"вот подсказали" - дык подсказавший чё не поможет разобраться ?
ааааааа , вон кому 20-ый мешочек нужен был !!!!!!!!!!!!!!!!!!!!!!!!
....лошадке ? :)
хотелось бы и с этим разобраться
Вы его который раз задаёте? Отвечал жеж: не надейтесь, с вами прикольно. :)
гыыы, ну подсказали.. вы ж один фиг ничего не поняли. и не поймете ближайшие пару лет...
цирк с конями
Вы его который раз задаёте? Отвечал жеж: не надейтесь, с вами прикольно. :)
половой акт - $100 , наблюдение за ПА -$200 , наблюдение за наблюдающим за ПА - $500 ?