Вверх ↑
Этот топик читают: Гость
Ответов: 5446
Рейтинг: 323
#61: 2011-09-26 12:23:14 ЛС | профиль | цитата
[offtop]Просвещайся[/offtop]
карма: 1

0
Ответов: 704
Рейтинг: 7
#62: 2011-09-26 14:50:53 ЛС | профиль | цитата
Tad, слезно прошу вставить в код очищалку файла. А то он его дописывает к существующему значению в файле.
code_25247.txt
карма: 0

0
файлы: 1code_25247.txt [583B] [145]
Гость
Ответов: 17029
Рейтинг: 0
#63: 2011-09-26 15:05:22 правка | ЛС | профиль | цитата


Редактировалось 1 раз(а), последний 2017-03-04 01:26:15
карма: 0

0
Ответов: 704
Рейтинг: 7
#64: 2011-09-26 16:58:44 ЛС | профиль | цитата
Как-так какого? Я же прикрепил. Там тот файл без расширения указан. Он у меня без расширения. Просто ели делать через список строк такое - там все ок. Но все равно грузит. Думаю может этот код решит проблему. Хотя сомневаюсь. Наверно вынесу в отдельную программу все это безобразие.
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#65: 2011-09-26 17:59:56 ЛС | профиль | цитата
Так ?
Add(InlineCode,7544769,427,329)
{
WorkPoints=#7:doWrite|
Code=#15:unit HiAsmUnit;|0:|9:interface|0:|21:uses kol,Share,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|15: Fn:TextFile;|0:|9: public|50: procedure doWrite(var _Data:TData; Index:Word);|5: end;|0:|14:implementation|0:|30:procedure THiAsmClass.doWrite;|14: var s:string;|8: begin|22: s:='temp_history';|22: AssignFile(Fn, s);|16: ReWrite(Fn);|32: WriteLn(Fn,toString(_Data));|21: CloseFile(Fn); |7: end;|0:|4:end.|
}

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
1
Голосовали:Neo
Ответов: 16884
Рейтинг: 1239
#66: 2011-09-26 19:06:29 ЛС | профиль | цитата
Или так
code_25252.txt

------------ Дoбавленo в 18.51:
или так
term2.rar
Neo, удалять предыдущие файлы *.cvs грех. А если захочешь статистику за год ?
Измерять температуру каждых 10 или 1 секунду - ты меня извини.
Даже в инкубаторах температуру измеряют через 30-60 МИНУТ !
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 2code_25252.txt [3.3KB] [150], term2.rar [1KB] [98]
Ответов: 704
Рейтинг: 7
#67: 2011-09-26 19:15:19 ЛС | профиль | цитата
Tad писал(а):
ы меня извини
ну а чего бы и не измерять? Люблю быть в курсе событий
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#68: 2011-09-27 10:59:52 ЛС | профиль | цитата
Neo, а так term3.rar
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1term3.rar [778B] [102]
Ответов: 704
Рейтинг: 7
#69: 2011-09-27 12:53:29 ЛС | профиль | цитата
Tad, не пойму из-за чего рантайм эррор 32
------------ Дoбавленo в 12.49:
и не пойму почему Вы предлагаете копировать результат? Там же его нужно обработать и выделить саму температуру.
------------ Дoбавленo в 12.53:
Что-то я совсем не пойму откуда у проблемы ноги растут. Стал копать в сторону использования результата: получается, что после того, как температуру обрабатывается, она попадает в мемори. Но из мемори она берется процессом из нового потока и обрабатывается в нем. Это то, от чего меня так трепетно оберегал 1nd1g0И, - отладка многопоточной программы? Но ведь обращение к мемори, в которое была запись из главного потока!
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#70: 2011-09-27 14:14:52 ЛС | профиль | цитата
Neo писал(а):
не пойму из-за чего рантайм эррор 32
из за неправильного пути к папке с файлами *.cvs
Может так будет понятней.
Add(InlineCode,11280652,154,119)
{
WorkPoints=#10:doLastFile|6:doRead|
EventPoints=#6:onRead|
Code=#15:unit HiAsmUnit;|0:|9:interface|0:|21:uses kol,Share,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|14: str:string;|15: Fn:TextFile;|9: public|20: onRead:THI_Event;|54: Procedure doLastFile(var _Data:TData; Index: Word);|50: Procedure doRead(var _Data:TData; Index: Word);|0:|5: end;|0:|14:implementation|33:Procedure THiAsmClass.doLastFile;|5:Begin|64: str := toString(_Data); // в str полный путь к последнему файлу|4:end;|0:|29:Procedure THiAsmClass.doRead;|5:Begin|76: If ExtractFileNameWOext(str)='' then Exit; // если нет файла *.cvs на выход|125: AssignFile(Fn, str); // назначаем имя файловой переменной Fn, дальше можем использовать str как угодно|70: Reset(Fn); // открываем фай на чтение|105: While not Eof(Fn) do ReadLn(Fn, str); // в str читаем строки до конца файла, в str последняя строка|61: CloseFile(Fn); // закрываем файл|94: str := Copy(str,Length(str)-26,27); // в str оставляем только Температуру и Дату-время|99: _hi_onEvent(onRead,str); // если не надо выводить, то эту строку закоментировать|97: AssignFile(Fn,'temp_history'); // назначаем файловой переменной Fn файл temp_history|88: ReWrite(Fn); // создаём и открываем новый файл для записи|75: WriteLn(Fn,str); // записываем в него строку str|61: CloseFile(Fn); // закрываем файл|4:End;|4:end.|
}


------------ Дoбавленo в 14.14:
Кто с правами - удалите предыдущее от 109.67.208.240.
Выбросило и не заметил.
Neo, строку
str := Copy(str,Length(str)-26,27); 
наверное нужно заменить на
str := Copy(str,Length(str)-27,28); 
т.к. температуры могут быть и отрицательные.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
70
Сообщение
...
Прикрепленные файлы
(файлы не залиты)