16

我在使用 Lua 获取文件大小时遇到​​问题。我正在创建一个函数方法,如果文件的文件大小为743 bytes,则该文件将被删除。

这是我的代码:

local getDLFile = function(fileToDL)
            local path = system.pathForFile(fileToDL, system.DocumentsDirectory )
            local myFile = io.open( path, "w+b" ) 
            http.request{ 
                url = "http://www.testfile.com/"..fileToDL, 
                sink = ltn12.sink.file(myFile),
            }

            -- i don't know what is the syntax
            if myFile.size == 743 bytes then
                 myFile.delete
            end             

end

任何人都可以帮助我处理我的情况吗?

4

2 回答 2

29

大小由 给出myFile:seek("end")

要删除文件,请使用os.remove(path). 但先关闭文件。

于 2012-05-23T03:07:44.557 回答
8

最近在 Corona 中添加了 Lua 文件系统支持!您可以使用获取文件大小

local lfs = require "lfs"
local size = lfs.attributes (path, "size")

你可以在这里阅读 http://keplerproject.github.com/luafilesystem/manual.html#reference

删除文件使用

os.remove(path)
于 2012-05-23T03:34:46.277 回答