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

Функціональний блок FS_READLINE читає дані по рядках з файлу.

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

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

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

Вхід READ

При позитивному фронті дані зчитуються з носія зберігання.

Вхід DEV

Визначає пристрій, з якого потрібно отримати доступ до файлів. Пристрій використовується для проекту і може бути керований в контекстному меню під Проект Зовнішня пам'ять.

Вхід PATH

Вказує шлях до файлу на носії зберігання. Шлях відповідає Unix-шляху до файлу у форматі UTF-8, якщо це підтримується. Шлях представлений наступним чином:

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

Вхід LINE

Визначає рядок, який потрібно прочитати. Перший рядок починається з номера 0.

Вхід ENDING

Визначає символ кінця рядка. Він вказується за допомогою екранірованних послідовностей: "\r\n". Якщо вхід не визначений, то використовується "\n".

Для наступних символів враховується екраніровання:

  • "\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 Byte Order Mark, вихід є істинним. BOM визначається при кожному читанні.

Вихід ERROR

У разі помилки повертає текст з повідомленням про помилку. Він є FALSE, якщо помилка не сталася. Стан зберігається для подальшого використання.

Можливі причини:

  • Сервіс носія зберігання не був запущений.
  • Пам'ять не була ініціалізована.
  • Дані для входу неправильні.
  • Віддалений сервер недоступний.
  • Носій зберігання не існує.
  • Вказаний шлях неправильний.