Страница 1 из 3 123 ПоследняяПоследняя
Показано с 1 по 10 из 21

Тема: Как считать имена файлов?

  1. #1
    Пользователь Аватар для Flomaster
    Регистрация
    03.05.2007
    Адрес
    Khabarovsk
    Сообщений
    278

    По умолчанию Как считать имена файлов?

    Приветствую всех!
    Появился вопрос такого плана. В памяти ПЛК-150 ежедневно создается файл с протоколом работы системы. Имена файлов уникальные. Вопрос: каким образом программными средствами получить имена всех файлов в Flash-памяти ПЛК?

  2. #2

    По умолчанию

    К сожалению, пока библиотека SysLibDir не поддерживается. В будущих прошивках мы её поддержим.

    Сейчас рекомендую, т.к. имена известны - путем последовательных попыток открытия файлов на !чтение! определить какие файлы есть.
    Также при создании файлов в отд. файл можно вносить список созданых файлов.

  3. #3
    Пользователь Аватар для Flomaster
    Регистрация
    03.05.2007
    Адрес
    Khabarovsk
    Сообщений
    278

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    К сожалению, пока библиотека SysLibDir не поддерживается. В будущих прошивках мы её поддержим.

    Сейчас рекомендую, т.к. имена известны - путем последовательных попыток открытия файлов на !чтение! определить какие файлы есть.
    Также при создании файлов в отд. файл можно вносить список созданых файлов.
    Спасибо, попробую путем перебора имен файлов.

  4. #4

    По умолчанию

    Цитата Сообщение от xScar2003 Посмотреть сообщение
    Спасибо, попробую путем перебора имен файлов.
    Бинарный поиск в данном случае рекомендую

  5. #5
    Пользователь
    Регистрация
    09.08.2013
    Адрес
    Башкортостан
    Сообщений
    234

    По умолчанию

    Появилась ли поддержка SysLibDir? Или есть аналоги?

    Или вопрос по другому:
    Есть ли информация об устройстве памяти ПЛК? Может можно считать область памяти отвечающую за хранение файлов (имена, адреса и пр. инфа) и разобрать ее? (написать свой Dir)
    Последний раз редактировалось Smith2007; 28.09.2013 в 13:58.

  6. #6
    Пользователь
    Регистрация
    13.10.2011
    Адрес
    Златоуст
    Сообщений
    1,021

    По умолчанию

    Вы не сможете получить список файлов. Но т.к. кроме вас файлы на ПЛК никто не записывает, то вы можете сами поддерживать такой список в отдельном файле, имя которого зашито в программу. Лучше расскажите, зачем вам это — опишите задачу.

  7. #7
    Пользователь
    Регистрация
    09.08.2013
    Адрес
    Башкортостан
    Сообщений
    234

    По умолчанию

    Имеется ряд контролируемых параметров. В случае выхода параметра за пределы
    нормы - генерируется текст с описанием события. Необходимо сохранять лог таких сообщений
    для возможности последующего анализа. Сохранить в файл текст я научился.
    Но на ПЛК память не резиновая и нужно следить следить, чтобы архив (архивные файлы)
    не превысили разумный объем. При превышении необходимо скинуть архив на
    внешний ресурс и удалить самые старые файлы. В качестве внешнего ресурса
    думаю можно использовать фтп сервер или свой самописный сервис
    Слушающий определенный порт. В случае неудачного сброса архива на ресурс повторять попытки.
    Если объем занимаемого архива станет равным критическому то удалять
    старые файлы без сброса архива.

    Примерно так.

  8. #8
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,248

    По умолчанию

    Цитата Сообщение от Smith2007 Посмотреть сообщение
    Имеется ряд контролируемых параметров. В случае выхода параметра за пределы
    нормы - генерируется текст с описанием события. Необходимо сохранять лог таких сообщений
    для возможности последующего анализа. Сохранить в файл текст я научился.
    Но на ПЛК память не резиновая и нужно следить следить, чтобы архив (архивные файлы)
    не превысили разумный объем. При превышении необходимо скинуть архив на
    внешний ресурс и удалить самые старые файлы. В качестве внешнего ресурса
    думаю можно использовать фтп сервер или свой самописный сервис
    Слушающий определенный порт. В случае неудачного сброса архива на ресурс повторять попытки.
    Если объем занимаемого архива станет равным критическому то удалять
    старые файлы без сброса архива.

    Примерно так.
    а что коран не позволяет, следить за размеров файла, и если он превышает определенный размер, перед внесением записи, удалить первую строку, а затем внести новую

  9. #9
    Пользователь
    Регистрация
    09.08.2013
    Адрес
    Башкортостан
    Сообщений
    234

    По умолчанию

    А какой функцией можно удалить первую строку? Или при каждом обращении считывать весь файл в память, а затем записывать начиная со второй? А если в файле будет 1000 строк? Как это отразиться на ресурсах ПЛК?

  10. #10
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,248

    По умолчанию

    Цитата Сообщение от Smith2007 Посмотреть сообщение
    а затем записывать начиная со второй?
    Про принцип стека FIFO слышали?

Страница 1 из 3 123 ПоследняяПоследняя

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •