Как получить размер файла и удалить файл в Lua?

У меня проблема с получением размера файла с помощью 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

Может ли кто-нибудь помочь мне в моем случае?

Ответ 1

Размер определяется myFile:seek("end").

Чтобы удалить файл, используйте os.remove(path). Но сначала закройте файл.

Ответ 2

Недавно в Corona была добавлена ​​поддержка файловой системы Lua. Вы можете получить размер файла, используя

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

Вы можете прочитать здесь http://keplerproject.github.com/luafilesystem/manual.html#reference

Чтобы удалить файл, используйте

os.remove(path)