Difference between revisions of "Manual:File System Functions"

From Mudlet
Jump to navigation Jump to search
m (add documentation text for page)
(→‎File System Functions: note about LFS)
 
Line 3: Line 3:
 
= 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.
 +
 +
{{note}} Mudlet also includes LuaFileSystem.  See their [https://lunarmodules.github.io/luafilesystem/manual.html manual] for more details.
  
 
==io.exists==
 
==io.exists==

Latest revision as of 07:52, 4 May 2024

File System Functions

A collection of functions for interacting with the file system.

Note Note: Mudlet also includes LuaFileSystem. See their manual for more details.

io.exists

io.exists(path)
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