Цель: Архиватор для переменной temp. Переменная temp должна сохраняться в файле archive.log каждые 2 секунды.
Проблема: файл не открывается и не дописывается в режиме доступа append.
ПЛК100 Р-L
прошивка 2.03
тагет 2.02
Цель: Архиватор для переменной temp. Переменная temp должна сохраняться в файле archive.log каждые 2 секунды.
Проблема: файл не открывается и не дописывается в режиме доступа append.
ПЛК100 Р-L
прошивка 2.03
тагет 2.02
Последний раз редактировалось Serp; 08.09.2008 в 17:38.
Библиотека поддерживает только режимы r и w. Об этом ясно написано в документации.
Владислав, ну поделитесь уже документацией, в которой все ясно описано
Спутал с документацией на ядро CoDeSys. Там только 2 режима. И библиотека тоже поддерживает эти 2 режима. Если есть заинтересованность в реализации режима "a", то можно это сделать.
Режим "rw"=="w", а "а" можно сделать переместив после открытия в "w" указатель в файле в конец.
1. Ограничено ли количество одновременно открытых файлов?
2. В каких случаях требуется закрывать файл?
3. Все ли остальные возможности библиотеки поддержаны?
1. 5 одновременно открытых файлов.
2. Закрывать надо, если надо удалить/дать доступ из другого места на запись (например через сервисы среды разработки).
3. Да: статистика, перемещение, переименование.
как избавиться от квадратиков, которыми заполняются пробелы в строках записываемых в файл?
??? Квадратики? Может это проблема с отображением?
Код пробела - 0х20, и если просмотрщик (например из TotalCommander) в 16-ричном режиме показывает 0х20 - всё в порядке. Если иное - пришлите исходный код и результат.
В библиотеке никаких преобразований с потоком данных не производится.
Вторая половина файла archive.log создана текущим проектом, а первая тем же проектом, но с не ограниченными по размеру строковыми переменными (половины между словом "температура", это хорошо видно в wordpad):
stTemp: STRING(5);
stParam: STRING(2) := 'T=';
PerevodStr: STRING(1) := '$0A';
1.Вопрос про квадратики
2.Не получилось записать в файл переменную типа флоат, возможно ли это?
3.Пришлось написать функцию realformat, ограничивающую количество знаков после запятой, есть ли в кодесис такая встроенная?
Последний раз редактировалось Serp; 23.09.2008 в 16:49.