FB_FileGets против FB_FileЧитать в twincat - PullRequest
1 голос
/ 20 апреля 2019

В программном обеспечении twincat есть две аналогичные функции для компании Beckhoff . FB_FileGets и FB_FileRead .Буду признателен, если кто-нибудь объяснит, в чем заключаются различия этих функций, и уточнит, когда мы будем использовать каждый из них.оба они имеют одну и ту же предпосылку или нет, используются одинаково в программах?какая из них имеет лучшую скорость (быстрое чтение в другом формате файла) и любую информацию, которая проясняет их для лучшего программирования.

enter image description here против enter image description here

1 Ответ

1 голос
/ 23 апреля 2019

FB_FileGets читает файл построчно. Поэтому, когда вы вызываете его, вы всегда получаете одну строку текстового файла в виде строки. Максимальная длина строки - 255 символов. Таким образом, используя этот функциональный блок, очень легко прочитать все строки файла. Нет необходимости в буферах и копировании памяти, если ограничение длины 255 строк в порядке.

THE FB_FileRead читает заданное количество байтов из файла. Таким образом, вы можете читать файлы, например, с 65000 символов в одной строке.

Я бы использовал FB_FileGets во всех случаях, когда вы знаете, что строки меньше 255 символов, и вы обрабатываете данные как построчно. Это очень просто в использовании. Если у вас нет представления о размерах линий, вам нужны все данные сразу или файл очень большой, я бы использовал FB_FileRead.

Я не проверял, но я думаю, что FB_FileRead, вероятно, быстрее, поскольку он просто копирует байты в буфер. И вы можете прочитать весь файл сразу, а не построчно.

...