Java de lucru cu fișiere - scris, citit, ștergerea

Java are multe instrumente pentru lucrul cu fișiere, deoarece ele servesc ca un depozit de date în mai multe programe. Foarte des accesul la dosar este necesară în Java Android. Toate clasele pentru lucrul cu fișiere localizate în pachetul java.io, care este stocat și clase pentru lucrul cu fluxuri de intrare și de ieșire. Strict vorbind, munca Java cu fișiere are loc în principal prin intermediul octet și de intrare și de ieșire de caractere fluxuri. Excepția în acest caz este clasa de fișiere. De la ea și să înceapă.

Clasa de fișiere Java - Lucrul cu fișiere

Clasa de fișiere interacționează direct cu fișiere și sistemul de fișiere. O instanță a acestei clase este utilizat în principal pentru a accesa fișierul de proprietăți și să navigați ierarhia subdirectoare. Nu se determină prin metode de extragere și stocare a datelor într-un fișier, dar cu această clasă, puteți obține o mulțime de informații cu privire la data fișier, ora, permisiunile de acces și calea către director. De fapt, obiectul de clasă de fișiere este interpretarea unui fișier sau director în Java.

Pentru a crea o instanță a fișierului, folosind unul dintre constructorii săi: File (String calea de la dosar, String nume de fișier).

Luați în considerare tehnicile de bază ale acestei clase, care să permită obținerea de informații despre un fișier sau director:

  • getName () - returnează numele fișierului;
  • există () - returnează un boolean adevărat, dacă fișierul există, sau false în caz contrar;
  • isFile () - determină dacă obiectul se referă la un fișier, returnează valoarea logică corespunzătoare;
  • isDirectory () - returnează true, în cazul în care acesta este un dosar;
  • canWrite () - returnează true, dacă fișierul este inscriptibil;
  • canRead () - returnează true, dacă fișierul este ușor de citit;
  • setReadOnly () - face fișierul read-only;
  • Lungimea () - returnează dimensiunea fișierului în octeți;
  • renameTo (fișier un nume nou) - redenumește fișierul curent, în conformitate cu argumentele. Returnează true, în cazul în care operațiunea este de succes;
  • șterge () - șterge un fișier sau un dosar (dacă este gol), ceea ce indică faptul apelantului;
  • Lista () - preia o listă de nume de obiecte stocate în directorul, ca matrice rând (aplicabil numai pentru directoare).

Astfel, prin utilizarea clasei de fișiere este furnizată în munca Java cu fișiere și foldere.

Lucrul cu fișiere pe clase FileInputStream și FileOutputStream

Mai devreme am menționat că realizat în principal prin intermediul unor fluxuri de intrare și de ieșire în lucrul cu fișiere Java. fluxuri de octeți pentru fișierele prezentate sub formă de clase FileInputStream și FileOutputStream. Aceste clase sunt mostenitorii claselor abstracte InputStream de bază și, respectiv OutputStream, astfel încât metodele acestor clase sunt disponibile pentru lucrul cu fișiere.

Luați în considerare în primul rând FileInputStream. Kituri din această clasă sunt prezentate mai jos:

Java de lucru cu fișiere - scris, citit, ștergerea

Primul constructor ia ca argument al căii de fișier ca un șir de caractere, iar al doilea - în formă de reprezentare obiect. Deși primul constructor este folosit mai des în al doilea caz, este posibil pentru a studia proprietățile fișierului disponibile în metodele de clasă de fișiere. Când creați o instanță a clasei FileInputStream deschide un flux de intrare pentru citirea fișierului.

Constructorul de clasa FileOutputStream sunt prezentate mai jos:

Java de lucru cu fișiere - scris, citit, ștergerea

Situația este similară cu o FileInputStream, dar poate lua, de asemenea o valoare „append“ logic, care, atunci când adevărat indică faptul că datele sunt scrise în fișierul țintă va fi anexată la existente, și dacă false - vor merge pe deplin suprascrie fișierul, și anume, datele vechi nu vor fi salvate.

Să ne uităm la un exemplu folosind aceste clase:

Java de lucru cu fișiere - scris, citit, ștergerea

Clasele FileReader și FileWriter

Dacă cu siguranță știți că atunci când se lucrează cu fișiere, va trebui să se ocupe cu textul, este logic să se utilizeze un caracter în loc de fluxuri de octet. Aceste fluxuri sunt prezentate clase FileReader și FileWriter în Java. Lucrul cu fișiere folosind aceste clase are loc aproximativ la fel ca și în cazul precedent. Aceste clase sunt descendenti Reader și Writer, respectiv, care definesc metodele de bază pentru intrare și ieșire de date.

Designeri clase FileReader și FileWriter sunt prezentate mai jos:

Java de lucru cu fișiere - scris, citit, ștergerea

Sunt de acord, diferențele în semantica față de octet fluxuri practic nici unul. Linia de jos este că aceste clase sunt concepute special pentru a lucra cu caractere în Unicode, nu se poate face fluxuri de octet. Acesta este modul în Java este organizat în lucrul cu fișiere. Exemplu claselor de date este prezentată mai jos:

Java de lucru cu fișiere - scris, citit, ștergerea

După cum puteți vedea, diferențele nu sunt respectate. Trebuie remarcat faptul că, deși caracterul de curgere, se întoarce metoda citit, iar metoda de scriere are o valoare întreagă. Deși semnătura metoda de scriere implică receptor de tip int argument este înregistrat în flux, numai inferior 16 biți, simboluri așa cum este reprezentat în Java este astfel numărul de biți.

concluzie

Deci, am discutat clasele de bază pentru lucrul cu fișiere în Java. Este demn de remarcat faptul că, dacă aveți de gând să dezvolte software-ul pentru Java Android, puteți utiliza în siguranță acest instrument.

Java de lucru cu fișiere - scris, citit, ștergerea

articole similare