Difference between revisions of "X File"
From GiderosMobile
(added x_ before file because file: is a wiki reserved word) |
(expanded example) |
||
Line 4: | Line 4: | ||
'''<translate>Supported platforms</translate>:''' [[File:Platform android.png]][[File:Platform ios.png]][[File:Platform mac.png]][[File:Platform pc.png]][[File:Platform html5.png]][[File:Platform winrt.png]][[File:Platform win32.png]]<br/> | '''<translate>Supported platforms</translate>:''' [[File:Platform android.png]][[File:Platform ios.png]][[File:Platform mac.png]][[File:Platform pc.png]][[File:Platform html5.png]][[File:Platform winrt.png]][[File:Platform win32.png]]<br/> | ||
'''<translate>Available since</translate>:''' Gideros 2011.6<br/> | '''<translate>Available since</translate>:''' Gideros 2011.6<br/> | ||
+ | |||
=== <translate>Description</translate> === | === <translate>Description</translate> === | ||
− | <translate>file object is usually returned by [[Special:MyLanguage/io.open|io.open]] used to manipulate (read and write) files in lua</translate> | + | <translate>file object is usually returned by [[Special:MyLanguage/io.open|io.open]] used to manipulate (read and write) files in lua.</translate> |
+ | |||
=== <translate>Examples</translate> === | === <translate>Examples</translate> === | ||
− | + | <source lang="lua"> | |
− | <source lang="lua">local function copy(src, dst) | + | --function to copy file |
− | + | local function copy(src, dst) | |
− | + | local srcf = io.open(src, "rb") | |
− | + | local dstf = io.open(dst, "wb") | |
− | + | ||
− | + | local size = 2^13 -- good buffer size (8K) | |
− | + | while true do | |
− | + | local block = srcf:read(size) | |
− | + | if not block then break end | |
− | + | dstf:write(block) | |
− | + | end | |
− | end</source> | + | |
+ | srcf:close() | ||
+ | dstf:close() | ||
+ | end | ||
+ | |||
+ | --function to check if file exists | ||
+ | local function exists(file) | ||
+ | local f = io.open(file, "rb") | ||
+ | if f == nil then return false end | ||
+ | f:close() return true | ||
+ | end | ||
+ | |||
+ | --usage | ||
+ | if not exists("|D|database.db") then | ||
+ | copy("database.db", "|D|database.db") | ||
+ | end | ||
+ | </source> | ||
+ | |||
{|- | {|- | ||
| style="width: 50%; vertical-align:top;"| | | style="width: 50%; vertical-align:top;"| |
Revision as of 03:56, 1 July 2020
Supported platforms:
Available since: Gideros 2011.6
Description
file object is usually returned by io.open used to manipulate (read and write) files in lua.
Examples
--function to copy file
local function copy(src, dst)
local srcf = io.open(src, "rb")
local dstf = io.open(dst, "wb")
local size = 2^13 -- good buffer size (8K)
while true do
local block = srcf:read(size)
if not block then break end
dstf:write(block)
end
srcf:close()
dstf:close()
end
--function to check if file exists
local function exists(file)
local f = io.open(file, "rb")
if f == nil then return false end
f:close() return true
end
--usage
if not exists("|D|database.db") then
copy("database.db", "|D|database.db")
end
Methodsfile:close closes file |
EventsConstants |