Gestionarea Fișierelor și Operațiuni I/O în Lua: io.open, read, write în Lua

Ghid complet pentru biblioteca io în Lua: deschiderea și închiderea sigură a fișierelor (io.open), moduri de citire (*all, *line, *number), scriere tamponată și erori.

Sintaxă
local f = io.open("fisier.txt", "r"); local continut = f:read("*a"); f:close()

Modulul io oferă două modele de lucru cu fișiere: modelul simplu (care utilizează fișierele implicite stdin și stdout) și modelul complet orientat pe obiecte, care returnează mânere de fișiere (file handles) sigure gestionate prin io.open().

Scrierea și citirea liniei cu linie a unui fișier de configurare
-- 1. Scrierea securizată într-un fișier nou:
local fisierScriere, eroareScriere = io.open("setari_aplicatie.conf", "w")
if not fisierScriere then
    error("Nu am putut deschide fișierul pentru scriere: " .. eroareScriere)
end

fisierScriere:write("# Configurare Server\n")
fisierScriere:write("port = 9000\n")
fisierScriere:write("activ = true\n")
fisierScriere:close()

-- 2. Citirea liniei cu linie (eficientă pentru fișiere mari, fără încărcare completă în RAM):
local fisierCitire = io.open("setari_aplicatie.conf", "r")
if fisierCitire then
    print("--- Linii citite din fisier ---")
    for linie in fisierCitire:lines() do
        print("LĂTUȘĂ: " .. linie)
    end
    fisierCitire:close()
end