Beckhoff公司的twincat
软件中有两个类似的文件读取功能。FB_FileGets和FB_FileRead。如果有人解释这些功能的区别并在我们使用它们时明确说明,我将不胜感激。它们是否具有相同的“先决条件”,在程序中以相同的方式使用?哪个具有更好的速度(以不同的文件格式快速读取)以及任何使它们清晰以便更好地编程的信息。
问问题
404 次
1 回答
2
FB_FileGets
逐行读取文件。所以当你调用它时,你总是会得到文本文件的一行作为字符串。一行的最大长度为 255 个字符。所以通过使用这个功能块,很容易读取文件的所有行。如果 255 行长度限制没问题,则不需要缓冲区和内存复制。
他从文件中读取FB_FileRead
给定数量的字节。因此,您可以在一行中读取例如 65000 个字符的文件。
FB_FileGets
在您知道行少于 255 个字符并且您逐行处理数据的所有情况下,我都会使用。使用起来非常简单。如果你不知道行的大小,你需要一次所有的数据或者文件很大,我会使用FB_FileRead
.
我没有测试过,但我认为它FB_FileRead
可能更快,因为它只是将字节复制到缓冲区。您可以一次读取整个文件,而不是逐行读取。
于 2019-04-23T06:04:51.457 回答