网站建设行业新闻网站开发厦门
web/
2025/10/1 11:30:37/
文章来源:
网站建设行业新闻,网站开发厦门,淄博网站制作服务优化,互联网免费下载I/O库用于在Lua中读取和处理文件。 Lua中有两种文件操作#xff0c;即隐式(Implicit)和显式(Explicit)操作。
对于以下示例#xff0c;无涯教程将使用例文件test.lua#xff0c;如下所示。
-- sample test.lua
-- sample2 test.lua
一个简单的文件打开操作使用以下语句。…
I/O库用于在Lua中读取和处理文件。 Lua中有两种文件操作即隐式(Implicit)和显式(Explicit)操作。
对于以下示例无涯教程将使用例文件test.lua如下所示。
-- sample test.lua
-- sample2 test.lua
一个简单的文件打开操作使用以下语句。
fileio.open (filename [, mode])
下表列出了各种文件模式。
Sr.No.Mode Remark1 r 只读模式是打开现有文件的默认模式。 2 w 启用写模式该模式将覆盖现有文件或创建新文件。 3 a 追加模式用于打开现有文件或创建要追加的新文件。 4 r 现有文件的读写模式。 5 w 如果文件存在或具有读写权限的新文件被删除则所有现有数据都将被删除。 6 a 启用了读取模式的追加模式可以打开现有文件或创建新文件。
隐式操作
隐式(Implicit)文件描述符使用标准输入/输出模式或使用单个输入和单个输出文件。下面显示了使用隐式文件描述符的示例。
-- Opens a file in read
fileio.open(test.lua, r)-- sets the default input file as test.lua
io.input(file)-- prints the first line of the file
print(io.read())-- closes the open file
io.close(file)-- Opens a file in append mode
fileio.open(test.lua, a)-- sets the default output file as test.lua
io.output(file)-- appends a word test to the last line of the file
io.write(-- End of the test.lua file)-- closes the open file
io.close(file)
运行该程序时将获得test.lua文件第一行的输出。
-- Sample test.lua
这是test.lua文件中语句的第一行。同样-test.lua文件的结尾行将附加到test.lua代码的最后一行。
在上面的示例中您可以看到使用io。上面的示例使用不带可选参数的io.read()。可选参数可以是以下任意一个。
Sr.No.Mode Remark1 * n 从当前文件位置读取并返回一个数字(如果文件位置存在)或返回nil。 2 * a 从当前文件位置返回文件的所有内容。 3 * l 从当前文件位置读取该行并将文件位置移至下一行。 4 number 读取函数中指定的字节数。
其他常见的I/O方法包括 io.tmpfile() - 返回用于读取和写入的临时文件一旦程序退出该文件将被删除。 io.type(file) - 根据输入文件返回fileclose file还是nil。 io.flush() - 清除默认输出缓冲区。 io.lines(optional file name) - 提供通用的 for 循环迭代器循环遍历文件并最终关闭文件以防万一在循环末尾提供了文件名未关闭该文件。
显式操作
无涯教程经常使用显式(Explicit)文件描述符该描述符允许一次处理多个文件。这些函数与隐式文件描述符非常相似。在这里使用file:function_name而不是io.function_name。下面显示了相同隐式文件描述符示例的文件版本的以下示例。
-- Opens a file in read mode
fileio.open(test.lua, r)-- prints the first line of the file
print(file:read())-- closes the opened file
file:close()-- Opens a file in append mode
fileio.open(test.lua, a)-- appends a word test to the last line of the file
file:write(--test)-- closes the open file
file:close()
运行程序时您将得到与隐式描述符示例类似的输出。
-- Sample test.lua
外部描述符的所有文件打开模式和参数读取方式与隐式文件描述符相同。
其他常见的文件方法包括 file:seek(optional whenceoptional offset) - whence参数为 set cur或 end。从文件开头设置具有更新文件位置的新文件指针。该函数的偏移量从零开始。如果第一个参数为 set则从文件开头开始偏移如果它是 cur或从文件末尾开始(如果是 end)。默认参数值为 cur和0因此可以通过不带参数调用此函数来获取当前文件位置。 file:flush() - 清除默认输出缓冲区。 io.lines(optional file name) - 提供 for 循环迭代器循环遍历文件并最终关闭文件以防万一在循环末尾提供了文件名未关闭该文件。
下面显示了使用seek方法的示例。它使光标从文件结尾之前的25个位置偏移。读取函数从搜索位置打印文件的其余部分。
-- Opens a file in read
fileio.open(test.lua, r)file:seek(end,-25)
print(file:read(*a))-- closes the opened file
file:close()
您将获得类似于以下内容的输出。
sample2 test.lua
--test
您可以试玩所有不同的模式和参数以了解Lua文件操作的全部函数。 Lua - 文件I/O - 无涯教程网无涯教程网提供I/O库用于在Lua中读取和处理文件。 Lua中有两种文件操作即隐式(Implicit )和显式(Ex...https://www.learnfk.com/lua/lua-file-io.html
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/85033.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!