Difference between revisions of "Manual:File System Functions"

From Mudlet
Jump to navigation Jump to search
(→‎File System Functions: note about LFS)
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{TOC right}}
 
{{TOC right}}
== File System Functions ==
+
{{#description2:Mudlet API documentation for functions interacting with the file system.}}
 +
= 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===
+
{{note}} Mudlet also includes LuaFileSystem.  See their [https://lunarmodules.github.io/luafilesystem/manual.html manual] for more details.
; io.exists()
+
 
 +
==io.exists==
 +
; io.exists(path)
 
: 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 26: Line 29:
 
</syntaxhighlight>
 
</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.
  

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