Ruby lucrează cu fișiere

Cunoașterea mea cu Ruby. Poate că cineva va veni la îndemână când va începe să-l învețe. Informații scurte despre fișiere și directoare. Din programele scrise în Ruby, puteți gestiona directoare și fișiere utilizând clasele Dir și File. Există, de asemenea, FileUtils, cu multe metode interesante.

cataloage
Pentru a lucra cu directoarele, puteți utiliza clasa Dir. Metodele de bază sunt utilizate Dir.pwd, Dir.chdir sau Dir.getwd și Dir.mkdir.

Dacă aveți nevoie de un director, creați-l cu mkdir și utilizați rmdir pentru al șterge.

Metoda de clasa intrările Dir returnează o matrice care conține toate elementele găsite în directorul, inclusiv fișiere, fișiere ascunse și alte directoare.

Același lucru se poate face și cu predarea:

Flux de catalog
Metoda clasă open / new deschide fluxul directoarelor.

  • cale - spune calea fluxului.
  • spune - returnează elementul curent
  • read - citește de la dir următorul element disponibil
  • rewind - revine la începutul firului

fișiere
Creați un fișier nou
Creați un fișier nou și, în același timp, îl deschideți, trebuie să aplicați noua metodă din clasa Fișier:

Primul parametru pentru a specifica calea și determină al doilea fișier de cod modal, modurile standard (r +, w +, a + b)

Fișierul existent este deschis utilizând metoda deschisă.

O altă modalitate interesantă de a organiza utilizarea variabilelor globale este ARGV / ARGF.

ARGV este o matrice și fiecare dintre elementele sale este numele fișierului. În acest caz, am adăugat numele fișierului cu "<<” метод из Array.
devine - această metodă de la Kernel preia rânduri din ARGV și până când returnează un șir.

ARGF - este concatenarea virtuală a tuturor fișierelor specificate în linia de comandă.

Ștergeți și redenumiți fișierele
Cu Ruby, aveți posibilitatea să redenumiți / ștergeți fișierele în mod programatic, să redenumiți / ștergeți metode.

Întrebări despre fișiere
Verificați dacă fișierul există înainte de ao deschide:

există? Există un sinonim?

Verificați dacă fișierul este într-adevăr un fișier

Este metoda citită? - dacă fișierul citit este destinat
Metoda este scrisă? - dacă fișierul de scriere este destinat
Este metoda executabilă? - fișier executabil

Metoda zero? - dacă fișierul are o lungime zero

Metoda de mărime? - obțineți lungimea fișierului (* posibil fără?)

Metoda ftype pentru interogarea tipului de fișier

returnează un șir cu tipul de fișier al fișierului, directorul, characterSpecial, blockSpecial, FIFO, link-ul, soclu, sau necunoscut
Metoda ctime - când fișierul a fost creat
Metoda mtime - când fișierul a fost modificat
Metoda Atime - când fișierul a fost accesat ultima dată

Modificați codul de mod al fișierului și proprietarul
mod code - acesta este dreptul de a accesa fisierul, metoda chmod cu masca ca in sistemul Unix.

proprietar / grup pentru fișier utilizând metoda chown care este similară cu comanda chown din Unix./

Clasa IO
Clasa IO reprezintă fluxurile de date de intrare / ieșire în format octet. Curenții includ:

  • $ stdin - de la tastatură
  • $ stdout - pe ecran
  • $ stderr - flux de ieșire al mesajelor de eroare, implicit la afișaj.

Clasa IO este strâns legată de clasa File.

Primul parametru este un descriptor numeric al fișierelor pentru intrarea standard. Intrarea standard poate fi predefinită.

0 - std. fluxul de intrare, variabila predefinită $ stdin (STDIN - mediul în Ruby)
1 - std. flux de ieșire $ stdout (STDOUT)
2 - std. mesaj de eroare flux $ stderr (STDERR)

metoda unei instanțe a clasei fileno, puteți verifica ce descriptor de fișiere numeric este setat

Metoda de spălare este de a reseta tamponul, scrieți liniile în flux, utilizând metoda <<затем сбросить.

Metoda aproape - închideți firul.

Flux pentru dosar

Articole similare