Difference between revisions of "Manual:File System Functions"

From Mudlet
Jump to navigation Jump to search
(→‎io.exists: fixed in 3.0)
(→‎lfs.attributes: add returned values)
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{TOC right}}
 
{{TOC right}}
== File System Functions ==
+
= File System Functions =
 
A collection of functions for interacting with the file system.
 
A collection of functions for interacting with the file system.
  
===io.exists===
+
==io.exists==
; io.exists()
+
; TrueOrFalse = io.exists()
 
: Checks to see if a given file or folder exists.
 
: Checks to see if a given file or folder exists.
 
: If it exists, it’ll return the Lua true boolean value, otherwise false.
 
: If it exists, it’ll return the Lua true boolean value, otherwise false.
Line 10: Line 10:
  
 
;Example
 
;Example
<lua>
+
<syntaxhighlight lang="lua">
 
-- This example works on Linux only
 
-- This example works on Linux only
 
if io.exists("/home/vadi/Desktop") then
 
if io.exists("/home/vadi/Desktop") then
Line 24: Line 24:
 
   echo("This file doesn't exist.")
 
   echo("This file doesn't exist.")
 
end
 
end
</lua>
+
</syntaxhighlight>
  
===lfs.attributes===
+
==lfs.attributes==
; lfs.attributes(path)
+
; infoTable = lfs.attributes(path)
 
: Returns a table with detailed information regarding a file or directory, or nil if path is invalid / file or folder does not exist.
 
: Returns a table with detailed information regarding a file or directory, or nil if path is invalid / file or folder does not exist.
  
 
;Example
 
;Example
<lua>
+
<syntaxhighlight lang="lua">
 
fileInfo = lfs.attributes("/path/to/file_or_directory")
 
fileInfo = lfs.attributes("/path/to/file_or_directory")
 
if fileInfo then
 
if fileInfo then
Line 45: Line 45:
 
     echo("The path is invalid (file/directory doesn't exist)")
 
     echo("The path is invalid (file/directory doesn't exist)")
 
end
 
end
</lua>
+
</syntaxhighlight>
  
 
[[Category:Mudlet API]]
 
[[Category:Mudlet API]]
 
[[Category:Mudlet Manual]]
 
[[Category:Mudlet Manual]]

Revision as of 22:47, 12 August 2018

File System Functions

A collection of functions for interacting with the file system.

io.exists

TrueOrFalse = io.exists()
Checks to see if a given file or folder exists.
If it exists, it’ll return the Lua true boolean value, otherwise false.
See lfs.attributes() for a cross-platform solution.
Example
-- This example works on Linux only
if io.exists("/home/vadi/Desktop") then
  echo("This folder exists!")
else
  echo("This folder doesn't exist.")
end

-- This example will work on both Windows and Linux.
if io.exists("/home/vadi/Desktop/file.tx") then
  echo("This file exists!")
else
  echo("This file doesn't exist.")
end

lfs.attributes

infoTable = lfs.attributes(path)
Returns a table with detailed information regarding a file or directory, or nil if path is invalid / file or folder does not exist.
Example
fileInfo = lfs.attributes("/path/to/file_or_directory")
if fileInfo then
    if fileInfo.mode == "directory" then
        echo("Path points to a directory.")
    elseif fileInfo.mode == "file" then
        echo("Path points to a file.")
    else
        echo("Path points to: "..fileInfo.mode)
    end
    display(fileInfo) -- to see the detailed information
else
    echo("The path is invalid (file/directory doesn't exist)")
end