Java.io.File razred v Javi
Razred datoteke Java je predstavitev poti datoteke ali imenika v Javi. Ker imajo imena datotek in imenikov različne oblike zapisa na različnih platformah, preprost niz ni primeren za njihovo poimenovanje. Razred Java File vsebuje več metod za delo z imenom poti, brisanje in preimenovanje datotek, ustvarjanje novih imenikov, izpisovanje vsebine imenika in določanje več pogostih atributov datotek in imenikov.
- Je abstraktna predstavitev imen datotek in imenikov.
- Ime poti, abstraktno ali v obliki niza, je lahko absolutno ali relativno. Starša abstraktnega imena poti je mogoče pridobiti s klicem metode getParent() tega razreda.
- Najprej bi morali ustvariti objekt razreda File tako, da mu posredujemo ime datoteke ali ime imenika. Datotečni sistem lahko izvaja omejitve za nekatere operacije na dejanskem objektu datotečnega sistema, kot so branje, pisanje in izvajanje. Te omejitve so skupaj znane kot dovoljenja za dostop.
- Primerki razreda File so nespremenljivi; to pomeni, da se enkrat ustvarjeno abstraktno ime poti, ki ga predstavlja objekt File, ne bo nikoli spremenilo.
Kako ustvariti predmet datoteke?
Datotečni objekt se ustvari s podajanjem niza, ki predstavlja ime datoteke, niza ali drugega datotečnega predmeta. na primer
File a = new File('/usr/local/bin/geeks'); To definira abstraktno ime datoteke za datoteko geeks v imeniku /usr/local/bin. To je absolutno abstraktno ime datoteke.
Polja v razredu datotek v Javi
| Polje | Vrsta | Opis |
|---|---|---|
| pathSeperator | Vrvica | znak ali niz, ki se uporablja za ločevanje posameznih poti na seznamu poti datotečnega sistema. |
| pathSeperatorChar | Char | znak, ki se uporablja za ločevanje posameznih poti na seznamu poti datotečnega sistema. |
| ločilo | Vrvica | privzeti znak za ločevanje imena, predstavljen kot niz. |
| separatorChar | Char | privzeti znak za ločevanje imena. |
Konstruktorji datotečnega razreda Java
- Datoteka (nadrejena datoteka, podrejeni niz): ustvari nov primerek datoteke iz nadrejene abstraktne poti in niza podrejene poti. Datoteka (ime poti niza): ustvari nov primerek datoteke s pretvorbo danega niza imena poti v abstraktno ime poti. Datoteka (nadrejeni niz, podrejeni niz): ustvari nov primerek datoteke iz nadrejenega niza imena poti in podrejenega niza imena poti. Datoteka (URI uri): ustvari nov primerek datoteke s pretvorbo danega URI datoteke: v abstraktno ime poti.
Metode razreda datoteke v Javi
| da ne | Metoda | Opis | Vrsta povratka |
|---|---|---|---|
| 1. | canExecute() | Preizkusi, ali lahko aplikacija izvede datoteko, označeno s to abstraktno potjo. | logično |
| 2. | canRead() | Preizkusi, ali lahko aplikacija prebere datoteko, označeno s to abstraktno potjo. | logično |
| 3. | canWrite() | Preizkusi, ali lahko aplikacija spremeni datoteko, označeno s to abstraktno potjo. | logično |
| 4. | compareTo(ime poti datoteke) | Leksikografsko primerja dve abstraktni imeni poti. | int |
| 5. | createNewFile() | Atomično ustvari novo, prazno datoteko, imenovano s to abstraktno potjo. | logično |
| 6. | createTempFile(predpona niza, pripona niza) | Ustvari prazno datoteko v privzetem imeniku začasnih datotek. | mapa |
| 7. | izbrisati() | Izbriše datoteko ali imenik, označen s to abstraktno potjo. | logično |
| 8. | enako (predmet obj) | Preizkuša enakost te abstraktne poti z danim objektom. | logično |
| 9. | obstaja() | Preveri, ali datoteka ali imenik, označen s to abstraktno potjo, obstaja. | logično |
| 10. | getAbsolutePath() | Vrne absolutni niz imena poti tega abstraktnega imena poti. | Vrvica |
| enajst. | seznam() | Vrne matriko nizov, ki poimenujejo datoteke in imenike v imeniku. | Vrvica[] |
| 12. | getFreeSpace() | Vrne število nedodeljenih bajtov v particiji. | dolga |
| 13. | getName() | Vrne ime datoteke ali imenika, označenega s to abstraktno potjo. | Vrvica |
| 14. | getParent() | Vrne niz imena poti nadrejenega elementa tega abstraktnega imena poti. | Vrvica |
| petnajst. | getParentFile() | Vrne abstraktno ime nadrejene poti tega abstraktnega imena poti. | mapa |
| 16. | getPath() | Pretvori to abstraktno ime poti v niz imena poti. | Vrvica |
| 17. | setReadOnly() | Označi datoteko ali imenik, imenovan tako, da so dovoljene le operacije branja. | logično |
| 18. | isDirectory() | Preveri, ali je datoteka, označena s to potjo, imenik. | logično |
| 19. | isFile() | Preizkuša, ali je datoteka, označena s to abstraktno potjo, običajna datoteka. | logično |
| dvajset. | isHidden() | Preveri, ali je datoteka, imenovana s to abstraktno potjo, skrita datoteka. | logično |
| enaindvajset. | dolžina() | Vrne dolžino datoteke, označene s to abstraktno potjo. | dolga |
| 22. | listFiles() | Vrne niz abstraktnih imen poti, ki označujejo datoteke v imeniku. | Mapa[] |
| 23. | mkdir() | Ustvari imenik, poimenovan s to abstraktno potjo. | logično |
| 24. | preimenuj v (ciljna datoteka) | Preimenuje datoteko, označeno s to abstraktno potjo. | logično |
| 25. | setExecutable(boolean izvedljiv) | Priročna metoda za nastavitev lastnikovega dovoljenja za izvajanje. | logično |
| 26. | setReadable (boolean berljiv) | Priročna metoda za nastavitev lastnikovega dovoljenja za branje. | logično |
| 27. | setReadable(boolean berljiv, boolean ownerOnly) | Nastavi dovoljenje za branje lastnika ali vseh. | logično |
| 28. | setWritable (boolean zapisljiv) | Priročna metoda za nastavitev lastnikovega dovoljenja za pisanje. | logično |
| 29. | toString() | Vrne niz imena poti tega abstraktnega imena poti. | Vrvica |
| 30. | toURI() | Konstruira URI datoteke, ki predstavlja to abstraktno pot. | VRSTA |
Primeri razredov datotek Java
Primer 1: Program za preverjanje, ali datoteka ali imenik fizično obstaja ali ne.
Java
// In this Java program, we accepts a file or directory name> // from command line arguments. Then the program will check> // if that file or directory physically exist or not and it> // displays the property of that file or directory.> import> java.io.File;> // Displaying file property> class> fileProperty {> > public> static> void> main(String[] args)> > {> > // accept file name or directory name through> > // command line args> > String fname = args[> 0> ];> > // pass the filename or directory name to File> > // object> > File f => new> File(fname);> > // apply File class methods on File object> > System.out.println(> 'File name :'> + f.getName());> > System.out.println(> 'Path: '> + f.getPath());> > System.out.println(> 'Absolute path:'> > + f.getAbsolutePath());> > System.out.println(> 'Parent:'> + f.getParent());> > System.out.println(> 'Exists :'> + f.exists());> > if> (f.exists()) {> > System.out.println(> 'Is writable:'> > + f.canWrite());> > System.out.println(> 'Is readable'> + f.canRead());> > System.out.println(> 'Is a directory:'> > + f.isDirectory());> > System.out.println(> 'File Size in bytes '> > + f.length());> > }> > }> }> |
Izhod
File name :file.txt Path: file.txt Absolute path:C:UsersakkiIdeaProjectscodewritingsrcfile.txt Parent:null Exists :true Is writable:true Is readabletrue Is a directory:false File Size in bytes 20
Primer 2: Program za prikaz celotne vsebine imenika
Tukaj bomo sprejeli ime imenika s tipkovnice in nato prikazali vso vsebino imenika. V ta namen se lahko metoda list() uporablja kot:
String arr[]=f.list();
V prejšnjem stavku metoda list() povzroči kopiranje vseh vnosov imenika v matriko prihod [] . Nato posredujte te matrične elemente arr[i] objektu File in jih preizkusite, da ugotovite, ali predstavljajo datoteko ali imenik.
Java
// Java Program to display all> // the contents of a directory> import> java.io.BufferedReader;> import> java.io.File;> import> java.io.IOException;> import> java.io.InputStreamReader;> // Displaying the contents of a directory> class> Contents {> > public> static> void> main(String[] args)> > throws> IOException> > {> > // enter the path and dirname from keyboard> > BufferedReader br => new> BufferedReader(> > new> InputStreamReader(System.in));> > System.out.println(> 'Enter dirpath:'> );> > String dirpath = br.readLine();> > System.out.println(> 'Enter the dirname'> );> > String dname = br.readLine();> > // create File object with dirpath and dname> > File f => new> File(dirpath, dname);> > // if directory exists,then> > if> (f.exists()) {> > // get the contents into arr[]> > // now arr[i] represent either a File or> > // Directory> > String arr[] = f.list();> > // find no. of entries in the directory> > int> n = arr.length;> > // displaying the entries> > for> (> int> i => 0> ; i System.out.println(arr[i]); // create File object with the entry and // test if it is a file or directory File f1 = new File(arr[i]); if (f1.isFile()) System.out.println(': is a file'); if (f1.isDirectory()) System.out.println(': is a directory'); } System.out.println( 'No of entries in this directory ' + n); } else System.out.println('Directory not found'); } }> |
Izhod
Enter dirpath: C:UsersakkiIdeaProjects Enter the dirname codewriting .idea : is a directory an1.txt : is a file codewriting.iml : is a file file.txt : is a file out : is a directory src : is a directory text : is a file No of entries in this directory 7
Sorodna objava: FileReader in FileWriter v Javi