Datamaskiner, Programmering
Java: Arbeide med filer - skriving, lesing, sletting
Java har mange verktøy for å arbeide med filer, fordi de fungerer som et oppbevaringssted for data i mange programmer. Svært ofte tilgang til filen er nødvendig i Java Android. Alle klasser for å arbeide sammen med filer som er lagret i den java.io pakke, som også lagres klasser for å arbeide med inngangs- og utgangsstrømmene. Strengt tatt oppstår Java arbeid med filer primært via byte og karakter input og output bekker. Unntaket i dette tilfellet er klassen File. Fra det og begynne.
Klasse File Java - Arbeide med filer
File klasse kommuniserer direkte med filer og filsystem. Et eksempel på denne klassen brukes først og fremst for å få tilgang til egenskapene for filen og navigere hierarki av underkataloger. Det er ikke bestemt av metoder for å utvinne og lagre data i en fil, men med denne klassen, kan du få mye informasjon om filen dato, klokkeslett, tilgangsrettigheter og katalogbane. Faktisk er Fil klasse objektet tolkningen av en fil eller katalog i Java.
For å opprette en forekomst av Fil, ved hjelp av en av sine konstruktører: Fil (String banen til mappen, String filnavn).
Vurdere de grunnleggende teknikkene i denne klassen, slik at for å få informasjon om en fil eller katalog:
- getName () - returnerer navnet på filen;
- finnes () - returnerer en boolsk SANN, hvis filen, eller eksisterer falsk i motsatt fall;
- isFile () - bestemmer om gjenstanden refererer til en fil, returnerer den tilsvarende logiske verdi;
- isDirectory () - returnerer true, hvis det er en mappe;
- canWrite () - returnerer true, hvis filen er skrivbar;
- canRead () - returnerer true, hvis filen er lesbar;
- setReadOnly () - gjør filen skrivebeskyttet;
- length () - returnerer filstørrelsen i byte;
- renameTo (filen et nytt navn) - endrer navn på gjeldende fil i samsvar med argumenter. Returnerer sann, hvis operasjonen er vellykket,
- delete () - sletter en fil eller mappe (hvis det er tomt), som angir den som ringer;
- Liste () - henter en liste over objektnavn som er lagret i telefonboken, som en rad array (gjelder kun til kataloger).
Således, ved hjelp av File klasse er gitt i Java arbeid med filer og mapper.
Arbeide med filer etter klasser Fileinputstream og Fileoutputstream
Tidligere nevnte vi at utføres hovedsakelig ved hjelp av inngående og utgående strømmer i Java arbeid med filer. Byte bekker for filene som presenteres i form av klasser Fileinputstream og Fileoutputstream. Disse klassene er arvinger til base abstrakte klasser henholdsvis Input og OutputStream, så metodene for disse klassene er tilgjengelig for å arbeide med filer.
Tenk første Fileinputstream. Pakkene i denne klassen er presentert nedenfor:
Den første konstruktøren tar som et argument av filen bane som en snor, og den andre - i form av objektrepresentasjon. Selv om den første konstruktøren brukes oftere i det andre tilfellet er det mulig å studere egenskapene til filen i filen klassemetoder. Når du oppretter en forekomst av klassen Fileinput åpner en input stream for å lese filen.
Klasse Fileoutputstream konstruktører er vist nedenfor:
Situasjonen er lik en Fileinputstream, men det kan også ta en logisk verdi "append", som, når sant indikerer at data skrives til målfilen vil bli lagt til det eksisterende, og hvis falsk - vil gå full overskrive filen, dvs. de gamle dataene lagres ikke.
La oss se på et eksempel ved hjelp av disse klassene:
Den inngående strøm Fileinput file1.txt leser data fra filen byte for byte av fremgangsmåten i lese (). Hver byte lese lagres i en variabel i heltall form. Videre, i kroppen av den mens sløyfen , blir denne variabelen som overføres som et argument for å skrive en forekomst metode for Fileoutputstream, som skriver de mottatte byte i file2.txt fil. Ved slutten av de to strømmer tvangs lukket ved den metode nær.
Klasser Filereader og Filewriter
Hvis du sikkert vet at når du arbeider med filer, må du forholde seg til teksten, er det fornuftig å bruke et tegn i stedet for byte bekker. Disse strømmene presenteres klasser Filereader og Filewriter i Java. Arbeide med filer ved hjelp av disse klassene foregår omtrent det samme som i forrige tilfelle. Disse klassene er gått ned henholdsvis Reader og brenner, som definerer de grunnleggende metoder for datainngang og -utgang.
Designere klasser Filereader og Filewriter er presentert nedenfor:
Enig, forskjeller i semantikk i forhold til byte bekker nesten ingen. Poenget er at disse klasser er spesielt utviklet for bruk med tegn i Unicode, kan ikke gjøre byte strømmer. Det er slik Java er organisert i arbeid med filer. Eksempel på de data klasser er gitt nedenfor:
Som du kan se, er forskjellene ikke observert. Det bør bemerkes at selv om strømmen karakter, de leser metoden returnerer, og skrive metoden tar et heltall. Selv om skrivemetoden signaturen innbefatter mottaker int typen argument er registrert i datastrømmen, bare de nedre 16 bitene, symboler som representert i Java er således det antall bits.
konklusjon
Så diskuterte vi de grunnleggende klasser for å arbeide med filer i Java. Det er verdt å merke seg at hvis du kommer til å utvikle programvare for Java Android, kan du trygt bruke dette verktøyet.
Similar articles
Trending Now