Lucrul cu fișiere în c #

Lucrul cu fișiere în c #

Tot timpul zilei. Despre conexiunea Alexey Gulynin. În ultimul articol, ați învățat puțin despre ce teste de unitate este în Visual Studio. În acest articol, aș vrea să vorbesc despre lucrul cu fișiere în C #. Lucrul cu fișierele pot fi împărțite în 2 grupe: 1) este de a lucra cu fișiere, cum ar fi cu elementele sistemului de fișiere, de exemplu, pentru a găsi un fișier, pentru a primi o listă de fișiere într-un director, a se vedea data unei modificări de fișiere, atribute diferite sale, extensie, copia sau șterge un fișier, creați unul nou. 2) lucrează cu conținutul fișierului: citiți fișierul sau scrieți ceva în el.

Pentru a efectua toate aceste operații, există mai multe clase situate în spațiul de nume "System.IO".

Există două clase File și FileInfo care sunt proiectate să funcționeze cu un fișier, ca parte a sistemului de fișiere. Există, de asemenea, mai multe metode care vă permit să lucrați cu întregul conținut al fișierului. În cazuri simple (când dimensiunile fișierelor sunt mici, spun până la 1MB), fișierul poate fi citit și memorat complet în memorie.

Unele metode de lucru cu fișiere:
  • ReadAllText (). Cea mai simplă operațiune este citirea întregului fișier. Această metodă este statică. Aici, ca parametru, puteți specifica calea completă la fișier. Când specificăm calea spre fișier, nu uitați să scăpați de caracterul "".
  • ReadAllLines (). Această metodă statică returnează o serie de șiruri de caractere, adică citește linia fișierului după linie.
  • WriteAllText (). Aici, ca parametru, trecem un șir și această linie este complet adăugată la fișier cu suprascrierea conținutului fișierului.
  • AppendAllText (). Aici, conținutul este adăugat peste fișierul existent, fără al suprascrie.

Mai jos este un exemplu al acestor metode. Pentru început, pregătim un dosar de testare, pe care îl umplem cu numele orașelor (Moscova, Petru, Kazan, Ufa, Sterlitamak). Numele fiecărui oraș se află pe o linie nouă. Fișierul se va numi "cities.txt" și îl va pune în rădăcina unui disc (în cazul meu este unitate "E"):

Ce se poate face cu clasa "Fișier" se poate face cu clasa "FileInfo" și invers. De ce sunt doi? Metodele din clasa "Fișier" sunt statice, iar metodele din clasa "FileInfo" sunt metode ale obiectului. Când lucrați cu metodele din clasa "Fișier", primul parametru indică întotdeauna calea spre fișier. În cazul "FileInfo" - acest nume este specificat o dată în constructor atunci când obiectul este creat. Dacă trebuie să efectuați o operațiune unică, este mai bine să utilizați clasa "Fișier". În cazul în care lucrați cu mai multe fișiere, este mai bine să utilizați "FileInfo".

Implementăm următorul algoritm: este necesar să se emită toate fișierele a căror date de modificare sunt mai vechi decât data introdusă de utilizator. Vom lua în considerare dosarul "C: \ Windows \ System32". Are multe fișiere. Aici trebuie să obținem toate fișierele din acest director. Privind în perspectivă, pot spune că acest lucru se poate face utilizând metoda "GetFiles ()" din clasa "DirectoryInfo".

Testați funcționarea acestui script.

Să scriem câteva exemple suplimentare pentru a lucra cu fișiere:

Ca temă: remake-ul ultimului exemplu folosind clasa "FileInfo".

În acest articol, ați învățat cum să lucrați cu fișiere în C #.

Mai multe articole.

Articole similare