Lua - 删除文件
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.