Lua怎么删除文件?

文章导读
Previous Quiz Next Lua 提供了 os table,我们可以使用它来执行特定于操作系统的任务,例如重命名文件、删除文件。我们可以使用 os.remove() 函数来删除文件。
📋 目录
  1. 语法 - os.remove() 方法
  2. 示例 - 删除现有文件
  3. 示例 - 删除新文件
A A

Lua - 删除文件



Previous
Quiz
Next

Lua 提供了 os table,我们可以使用它来执行特定于操作系统的任务,例如重命名文件、删除文件。我们可以使用 os.remove() 函数来删除文件。

语法 - os.remove() 方法

result, message = os.remove (filename)

其中:

  • filename− 要删除的文件名。

该方法会删除文件,如果操作成功则返回 result 为 true,否则返回 nil。如果在删除文件过程中发生错误(如文件不存在或文件正被某个应用程序使用而无法删除等),则 message 表示错误消息。

示例 - 删除现有文件

让我们先检查失败情况。我们尝试删除一个现有文件,但 Lua 程序没有权限删除它。

main.lua

-- 要删除的文件
local fileName = "example1.txt"

result, message = os.remove(fileName)

-- 如果文件被删除
if result then
   print("File deleted successfully.")
else
   print("File deletion failed.", message)
end 

输出

当上述代码构建并执行时,会产生以下结果:

File deletion failed.	example1.txt: Permission denied

示例 - 删除新文件

现在让我们在当前目录创建一个临时文件,并使用 os.remove() 函数删除它。

main.lua

-- 写入文件内容
function writeFile()
   -- 以写入模式打开文件,
   -- 如果文件不存在则创建
   -- 如果文件存在则覆盖内容
   f = io.open("example.txt","w")
   -- 写入内容
   f:write("Welcome to example.com", "\n")
   f:write("Simply Easy Learning", "\n")
   -- 关闭文件句柄
   f:close()
end

-- 写入文件
writeFile()

print("Content written to the file successfully.")

-- 要删除的文件
local fileName = "example.txt"

result, message = os.remove(fileName)

-- 如果文件被删除
if result then
   print("File deleted successfully.")
else
   print("File deletion failed.", message)
end

输出

当上述代码构建并执行时,会产生以下结果:

Content written to the file successfully.
File deleted successfully.