Altro [GUIDA]LUA guida alle i/o Vol.2

Stato
Discussione chiusa ad ulteriori risposte.

Mr.Alby

Utente Gold
9 Giugno 2010
666
54
128
321
Ultima modifica:
Guida numero 1 ------> http://www.inforge.net/community/me...358-[guida]lua-guida-alle-i-o-me-le-basi.html

ok in questa guida vi illustrerò il comando io.open() e approfondiremo gli altri

allora il comando io.open() ha molte funzioni tra le quali
  • sola lettura indicato dal simbolo "r";
  • scrittura indicato dal simbolo "w";
  • modalità di aggiornamento: "a"; <--- a noi non interessa momentaneamente
  • modalità di rescrittura ovvero tutti i file precedenti vengono cancellati: "w+";
  • modalità di conservazione: tutti i file precedenti vengono conservati: "r+";
  • modalità di conservazione2: tutti i file precedenti vengono conservati ed è permesso scrivere solo alla chiusura del programma: "a+"; <---non ci interessa per ora
dopo questa breve panoramica fate finta che debba fissare una specie di password ad un pg(utilizzabile come volete). questo file lo chiamaremo: "NOMEPLAYER_password". Iniziamo subito
PHP:
--POSSIBILI CICLI PRECEDENTI TRA CUI WHEN,QUEST,E STATE ;)        repeat        say("Inserisci password")        k=input()    until k != nil    say("La tua password sara' "..k.." ?")    local u=select("Si", "No")    if u==2 then        return    elseif u==1 then        say_reward("Password corrente "..k)        io.output("/percorso in cui la volete mettere/"..pc.get_name().."_psw.alby") --indirizzamento del file        io.write(k) --scrittura        io.flush() --pre chiusura file        io.close() --chiusura file    end

in quell'esempio non c'era l'io.open() per il semplice motivo che se un file non esiste non lo potete aprire(ma dai). Quindi ne ho creato uno io, ora passiamo all'esempio
PHP:
--POSSIBILI CICLI PRECEDENTI TRA CUI WHEN,QUEST,E STATE ;)        repeat        say("Inserisci vecchia password")        k=input()    until k != nil     local file =io.open("/percorso scelto da voi <.</"..pc.get_name().."_psw.alby", "r") --sola lettura    local linea=tostring(file:read()) --lettura del file    file:close()--chiusura    if k != linea then        say("Hai sbagliato ad inserire la tua vecchia password")        return     end    repeat        say("Inserisci nuova password")        j=input()    until j != nil    say_reward("Vuoi sostituire "..linea.." con "..j.." ?")    local s=select("Si", "No")    if s==2 then        return    elseif s==1 then    --apertura del file in modalità scrittura(tutti i file precedenti vengono cancellati)        local file2= io.open("/percorso scelto da voi/"..pc.get_name().."_psw.alby", "w+")         file2:write(j) --scrittura sul file        file2:flush() --ricordate il flush() va messo solo dopo che si scrive su un file        file2:close() --chiusura file        say_reward("Password cambiata con successo")        say_reward("Password corrente : "..j)    endend

allora in quello spezzone ho mostrato come si poteva cambiare una password..... noterete che nn ci sn i comandi io.read(), io.write()... per il semplice motivo che il comando io.open() è un comando molto diverso dagli altri, poichè dovrei sempre fare io.open(......, "w+):write,flush eccetera.. l'ho assegnato alla variavile "file" e "file2" per semplificarmi la vita *-*

Questa guida è finita, se avete dubbi commentate, se dovete criticare: formattate il pc e buttatelo giù da un ponte °-°.

i +1 se like sempre accetti.( non so perchè non va a capo quando l'ho messo io nei code...)
 
  • Mi piace
Reazioni: 7he Boss
Stato
Discussione chiusa ad ulteriori risposte.