web-dev-qa-db-ja.com

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

誰かが私のケースについて私を助けることができますか?

12
gadss

サイズはmyFile:seek("end")で指定されます。

ファイルを削除するには、os.remove(path)を使用します。ただし、最初にファイルを閉じてください。

23
lhf

最近、Luaファイルシステムのサポートがコロナに追加されました!あなたはを使用してファイルサイズを取得することができます

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

ここで読むことができます http://keplerproject.github.com/luafilesystem/manual.html#reference

ファイルを削除するには、

os.remove(path)
8
SatheeshJM