Функциональный блок FS_READLINE

Функциональный блок FS_READLINE считывает данные построчно из файла.

Внимание: При чтении очень больших файлов ПЛК или вся система может зависнуть и больше не запуститься.

Примечание: Максимальный размер строки, который можно прочитать по соображениям безопасности составляет 1024'000 байт.

Файловая система должна быть предварительно инициализирована с помощью FS_INIT. Все операции выполняются асинхронно для каждого созданного носителя.

Вход READ

При положительном фронте данные считываются с носителя.

Вход DEV

Определяет устройство, с которого следует получать доступ к файлам. Устройство используется в проекте и может быть управляемо в контекстном меню под Проект Внешнее хранилище.

Вход PATH

Указывает путь к файлу на носителе. Путь соответствует пути к файлу Unix в формате UTF-8, если он поддерживается. Путь представлен следующим образом:

Папка/Подпапка/Файл.txt

Вход LINE

Определяет строку, которую следует прочитать. Первая строка начинается с номера 0.

Вход ENDING

Определяет переход на новую строку. Он указывается с помощью escape-последовательностей: "\r\n". Если вход не определен, то предполагается "\n".

Для следующих символов учитывается escape-последовательность:

  • "\t" (ASCII 9 (0x09)), символ табуляции.
  • "\n" (ASCII 10 (0x0A)), перевод строки (Line Feed).
  • "\r" (ASCII 13 (0x0D)), возврат каретки (Carriage Return).
  • "\0" (ASCII 0 (0x00)), байт NUL.
  • '\xEF' запись для байтов.

Примечание: Чтобы также можно было определить двоичные символы, такие как '\xEF', их необходимо определять в одинарных кавычках.

Выход DONE

Выход возвращает импульс при успехе, чтобы выполнить следующую операцию. Импульс происходит по завершении операции, даже если произошла ошибка.

Выход DATA

Возвращает прочитанную строку, включая конец строки. Состояние сохраняется для последующего использования.

Выход EOF

Если достигнуто окончание файла, вход истинен.

Выход BOM

Если найдена метка порядка байтов UTF-8, выход истинен. BOM определяется при каждом чтении.

Выход ERROR

В случае ошибки возвращает текст с сообщением об ошибке. Он FALSE, если ошибка не возникла. Состояние сохраняется для последующего использования.

Возможные причины:

  • Сервис носителя не был запущен.
  • Хранилище не было инициализировано.
  • Данные для входа недействительны.
  • Удаленный сервер недоступен.
  • Носитель не существует.
  • Указанный путь недействителен.