1

Beckhoff公司的twincat软件中有两个类似的文件读取功能。FB_FileGetsFB_FileRead。如果有人解释这些功能的区别并在我们使用它们时明确说明,我将不胜感激。它们是否具有相同的“先决条件”,在程序中以相同的方式使用?哪个具有更好的速度(以不同的文件格式快速读取)以及任何使它们清晰以便更好地编程的信息。

在此处输入图像描述对比在此处输入图像描述

4

1 回答 1

2

FB_FileGets逐行读取文件。所以当你调用它时,你总是会得到文本文件的一行作为字符串。一行的最大长度为 255 个字符。所以通过使用这个功能块,很容易读取文件的所有行。如果 255 行长度限制没问题,则不需要缓冲区和内存复制。

他从文件中读取FB_FileRead给定数量的字节。因此,您可以在一行中读取例如 65000 个字符的文件。

FB_FileGets在您知道行少于 255 个字符并且您逐行处理数据的所有情况下,我都会使用。使用起来非常简单。如果你不知道行的大​​小,你需要一次所有的数据或者文件很大,我会使用FB_FileRead.

我没有测试过,但我认为它FB_FileRead可能更快,因为它只是将字节复制到缓冲区。您可以一次读取整个文件,而不是逐行读取。

于 2019-04-23T06:04:51.457 回答