Java.io.File Class Javassa
Java Tiedostoluokka on Java-esitys tiedoston tai hakemiston polusta. Koska tiedostojen ja hakemistojen nimillä on eri muotoja eri alustoilla, yksinkertainen merkkijono ei riitä nimeämään niitä. Java-tiedostoluokka sisältää useita tapoja työskennellä polun nimellä, tiedostojen poistamiseen ja uudelleennimeämiseen, uusien hakemistojen luomiseen, hakemiston sisällön listaamiseen sekä useiden tiedostojen ja hakemistojen yleisten attribuuttien määrittämiseen.
- Se on abstrakti esitys tiedostoista ja hakemistopolkuista.
- Polkunimi, joko abstrakti tai merkkijonomuodossa, voi olla joko absoluuttinen tai suhteellinen. Abstraktin polun nimen ylätaso voidaan saada kutsumalla tämän luokan getParent()-metodia.
- Ensinnäkin meidän tulisi luoda File class -objekti välittämällä sille tiedoston tai hakemiston nimi. Tiedostojärjestelmä voi toteuttaa rajoituksia tietyille toiminnoille varsinaisessa tiedostojärjestelmäobjektissa, kuten lukeminen, kirjoittaminen ja suorittaminen. Näitä rajoituksia kutsutaan yhteisesti käyttöoikeuksiksi.
- Tiedosto-luokan ilmentymät ovat muuttumattomia; eli tiedosto-objektin edustama abstrakti polkunimi ei koskaan muutu, kun se on luotu.
Kuinka luoda tiedostoobjekti?
Tiedosto-objekti luodaan välittämällä merkkijono, joka edustaa tiedoston nimeä, merkkijonoa tai muuta tiedostoobjektia. Esimerkiksi,
File a = new File('/usr/local/bin/geeks'); Tämä määrittää abstraktin tiedostonimen geeks-tiedostolle hakemistossa /usr/local/bin. Tämä on absoluuttinen abstrakti tiedostonimi.
Javan tiedostoluokan kentät
| Ala | Tyyppi | Kuvaus |
|---|---|---|
| pathSeperator | merkkijono | merkki tai merkkijono, jota käytetään erottamaan yksittäiset polut tiedostojärjestelmän polkujen luettelossa. |
| pathSeperatorChar | Hiiltyä | merkki, jota käytetään erottamaan yksittäiset polut tiedostojärjestelmän polkujen luettelossa. |
| erotin | merkkijono | oletusnimen erotinmerkki, joka esitetään merkkijonona. |
| erotinChar | Hiiltyä | oletusnimen erotinmerkki. |
Java-tiedostoluokan rakentajat
- Tiedosto (Tiedoston ylätason, merkkijonon lapsi): Luo uuden tiedoston ilmentymän abstraktin ylätason polunnimestä ja alipolun nimen merkkijonosta. Tiedosto(merkkijonon polkunimi): Luo uuden tiedoston ilmentymän muuntamalla annetun polun nimen merkkijonon abstraktiksi polunnimeksi. Tiedosto(merkkijonon ylätason, merkkijonon lapsi): Luo uuden tiedoston ilmentymän pääpolun nimimerkkijonosta ja alipolun nimimerkkijonosta. Tiedosto(URI uri): Luo uuden tiedoston esiintymän muuntamalla annetun tiedoston: URI abstraktiksi polunnimeksi.
menetelmät tiedostoluokasta Javassa
| Kyllä ei. | Menetelmä | Kuvaus | Palautustyyppi |
|---|---|---|---|
| 1. | voi suorittaa() | Testaa, voiko sovellus suorittaa tällä abstraktilla polulla merkittyä tiedostoa. | boolean |
| 2. | osaa lukea() | Testaa, voiko sovellus lukea tällä abstraktilla polulla merkittyä tiedostoa. | boolean |
| 3. | osaa kirjoittaa() | Testaa, voiko sovellus muokata tällä abstraktilla polulla merkittyä tiedostoa. | boolean |
| 4. | vertaa kohteeseen(tiedoston polku) | Vertaa kahta abstraktia polunnimeä leksikografisesti. | int |
| 5. | luo uusi tiedosto() | Atomically luo uuden, tyhjän tiedoston, jonka nimi on tällä abstraktilla polulla. | boolean |
| 6. | createTempFile(merkkijonon etuliite, merkkijonon pääte) | Luo tyhjän tiedoston oletusarvoiseen väliaikaistiedostohakemistoon. | Tiedosto |
| 7. | poistaa() | Poistaa tiedoston tai hakemiston, joka on merkitty tällä abstraktilla polkunimellä. | boolean |
| 8. | yhtä kuin (objektiobjekti) | Testaa tämän abstraktin polun samanarvoisuuden annetun objektin kanssa. | boolean |
| 9. | olemassa() | Testaa, onko tällä abstraktilla polulla merkitty tiedosto tai hakemisto olemassa. | boolean |
| 10. | getAbsolutePath() | Palauttaa tämän abstraktin polun nimen absoluuttisen polun merkkijonon. | merkkijono |
| yksitoista. | lista() | Palauttaa joukon merkkijonoja, jotka nimeävät hakemiston tiedostot ja hakemistot. | merkkijono[] |
| 12. | getFreeSpace() | Palauttaa osion varaamattomien tavujen määrän. | pitkä |
| 13. | getName() | Palauttaa tiedoston tai hakemiston nimen, joka on merkitty tällä abstraktilla polkunimellä. | merkkijono |
| 14. | getParent() | Palauttaa tämän abstraktin polunnimen ylätason polkunimijonon. | merkkijono |
| viisitoista. | getParentFile() | Palauttaa tämän abstraktin polun nimen ylätason abstraktin polunnimen. | Tiedosto |
| 16. | getPath() | Muuntaa tämän abstraktin polun nimen polkunimimerkkijonoksi. | merkkijono |
| 17. | setReadOnly() | Merkitsee tiedoston tai hakemiston nimeksi niin, että vain lukutoiminnot ovat sallittuja. | boolean |
| 18. | isDirectory() | Testaa, onko tällä polulla merkitty tiedosto hakemisto. | boolean |
| 19. | isFile() | Testaa, onko tällä abstraktilla polulla merkitty tiedosto normaali tiedosto. | boolean |
| kaksikymmentä. | isHidden() | Testaa, onko tällä abstraktilla polulla nimetty tiedosto piilotettu tiedosto. | boolean |
| kaksikymmentäyksi. | pituus() | Palauttaa tällä abstraktilla polkunimellä merkityn tiedoston pituuden. | pitkä |
| 22. | listatiedostot() | Palauttaa joukon abstrakteja polkunimiä, jotka ilmaisevat hakemiston tiedostot. | Tiedosto[] |
| 23. | mkdir() | Luo tällä abstraktilla polkunimellä nimetyn hakemiston. | boolean |
| 24. | renameTo(tiedoston kohde) | Nimeää uudelleen tämän abstraktin polunimen osoittaman tiedoston. | boolean |
| 25. | setExecutable (looginen suoritettava tiedosto) | Kätevä tapa asettaa omistajan suorituslupa. | boolean |
| 26. | setReadable (looginen luettava) | Kätevä tapa asettaa omistajan lukuoikeus. | boolean |
| 27. | setReadable (luettava looginen arvo, vain looginen omistaja) | Asettaa omistajan tai kaikkien lukuoikeudet. | boolean |
| 28. | setWritable (kirjoitettava looginen) | Kätevä tapa asettaa omistajan kirjoitusoikeudet. | boolean |
| 29. | toString() | Palauttaa tämän abstraktin polunnimen polkunimijonon. | merkkijono |
| 30. | toURI() | Muodostaa tiedoston URI:n, joka edustaa tätä abstraktia polkunimeä. | TYYPPI |
Java-tiedostoluokkaesimerkkejä
Esimerkki 1: Ohjelma tarkistaa, onko tiedosto tai hakemisto fyysisesti olemassa vai ei.
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());> > }> > }> }> |
Lähtö
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
Esimerkki 2: Ohjelma näyttää hakemiston kaiken sisällön
Täällä hyväksymme hakemiston nimen näppäimistöltä ja näytämme sitten hakemiston kaiken sisällön. Tätä tarkoitusta varten list()-menetelmää voidaan käyttää seuraavasti:
String arr[]=f.list();
Edellisessä käskyssä list()-menetelmä aiheuttaa kaikki taulukkoon kopioidut hakemistomerkinnät arr[] . Välitä sitten nämä taulukkoelementit arr[i] File-objektille ja testaa ne, edustavatko ne tiedostoa vai hakemistoa.
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'); } }> |
Lähtö
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
Liittyvä postaus: FileReader ja FileWriter Javassa