logo

Classe Java.io.File a Java

La classe de fitxers Java és la representació de Java d'un nom de ruta de fitxer o directori. Com que els noms de fitxers i directoris tenen formats diferents en diferents plataformes, una cadena simple no és adequada per nomenar-los. La classe de fitxers Java conté diversos mètodes per treballar amb el nom de ruta, suprimir i canviar el nom de fitxers, crear directoris nous, llistar el contingut d'un directori i determinar diversos atributs comuns de fitxers i directoris.

  • És una representació abstracta de fitxers i noms de ruta de directoris.
  • Un nom de camí, ja sigui abstracte o en forma de cadena, pot ser absolut o relatiu. El pare d'un nom de camí abstracte es pot obtenir invocant el mètode getParent() d'aquesta classe.
  • En primer lloc, hauríem de crear l'objecte de classe File passant-li el nom del fitxer o el nom del directori. Un sistema de fitxers pot implementar restriccions a determinades operacions a l'objecte del sistema de fitxers real, com ara llegir, escriure i executar. Aquestes restriccions es coneixen col·lectivament com a permisos d'accés.
  • Les instàncies de la classe File són immutables; és a dir, un cop creat, el nom de camí abstracte representat per un objecte File no canviarà mai.

Com crear un objecte de fitxer?

Un objecte File es crea passant una cadena que representa el nom d'un fitxer, una cadena o un altre objecte File. Per exemple,



File a = new File('/usr/local/bin/geeks');>

Això defineix un nom de fitxer abstracte per al fitxer geeks al directori /usr/local/bin. Aquest és un nom de fitxer abstracte absolut.

Camps de la classe de fitxer a Java

Camp

aleatòria al c

Tipus



Descripció

pathSeperator Corda el caràcter o la cadena utilitzats per separar camins individuals en una llista de camins del sistema de fitxers.
pathSeperatorChar Char el caràcter utilitzat per separar camins individuals en una llista de camins del sistema de fitxers.
separador Corda caràcter separador de noms per defecte representat com una cadena.
separadorChar Char caràcter separador de noms per defecte.

Constructors de classe de fitxers Java

    Fitxer (Fitxer principal, String fill): crea una nova instància de fitxer a partir d'un nom de camí abstracte principal i una cadena de nom de camí secundari. Fitxer(String pathname): crea una nova instància de fitxer convertint la cadena del nom de camí donada en una ruta abstracta. Fitxer(String parent, String fill): crea una nova instància de fitxer a partir d'una cadena de nom de camí principal i una cadena de nom de camí d'accés secundari. Fitxer(URI URI): crea una nova instància de fitxer convertint el fitxer donat: URI en un nom de ruta abstracte.

Mètodes de classe de fitxers a Java

S. No. Mètode Descripció Tipus de retorn
1. canExecute() Comprova si l'aplicació pot executar el fitxer indicat per aquest nom de ruta abstracte. booleà
2. canRead() Comprova si l'aplicació pot llegir el fitxer indicat per aquest nom de ruta abstracte. booleà
3. canWrite() Comprova si l'aplicació pot modificar el fitxer indicat per aquest nom de ruta abstracte. booleà
4. compareTo(Camí del fitxer) Compara lexicogràficament dos noms de camí abstractes. int
5. createNewFile() Atòmicament crea un fitxer nou i buit anomenat amb aquest nom de ruta abstracte. booleà
6. createTempFile (prefix de cadena, sufix de cadena) Crea un fitxer buit al directori de fitxers temporals per defecte. Dossier
7. suprimir() Elimina el fitxer o el directori indicat per aquest nom de ruta abstracte. booleà
8. iguals (objecte objecte) Prova aquest nom de camí abstracte per a la igualtat amb l'objecte donat. booleà
9. existeix() Comprova si el fitxer o el directori indicat per aquest nom de camí abstracte existeix. booleà
10. getAbsolutePath() Retorna la cadena de camí d'accés absoluta d'aquest nom de camí abstracte. Corda
11. llista () Retorna una matriu de cadenes que anomenen els fitxers i directoris del directori. Cadena[]
12. getFreeSpace() Retorna el nombre de bytes no assignats a la partició. llarg
13. getName() Retorna el nom del fitxer o directori indicat per aquest nom de ruta abstracte. Corda
14. getParent() Retorna la cadena del nom del camí d'accés del pare d'aquest nom de camí abstracte. Corda
15. getParentFile() Retorna el nom del camí abstracte del pare d'aquest nom del camí abstracte. Dossier
16. getPath() Converteix aquest nom de camí abstracte en una cadena de nom de camí. Corda
17. setReadOnly() Marca el fitxer o el directori amb el nom de manera que només es permetin operacions de lectura. booleà
18. isDirectory() Comprova si el fitxer indicat per aquest nom de ruta és un directori. booleà
19. isFile() Comprova si el fitxer indicat per aquest nom de ruta abstracte és un fitxer normal. booleà
20. isHidden() Comprova si el fitxer anomenat amb aquest nom de camí abstracte és un fitxer ocult. booleà
21. llargada() Retorna la longitud del fitxer indicada per aquest nom de camí abstracte. llarg
22. listFiles() Retorna una matriu de camins abstractes que denoten els fitxers del directori. Dossier[]
23. mkdir() Crea el directori anomenat amb aquest nom de ruta abstracte. booleà
24. renameTo(Fitxer dest) Canvia el nom del fitxer indicat per aquest nom de camí abstracte. booleà
25. setExecutable (executable booleà) Un mètode convenient per establir el permís d'execució del propietari. booleà
26. setReadable (llegible booleà) Un mètode còmode per establir el permís de lectura del propietari. booleà
27. setReadable (llegible booleà, propietari booleà només) Estableix el permís de lectura del propietari o de tothom. booleà
28. setWritable (escriptura booleà) Un mètode convenient per establir el permís d'escriptura del propietari. booleà
29. toString() Retorna la cadena del camí d'accés d'aquest nom de camí abstracte. Corda
30. toURI() Construeix un URI de fitxer que representa aquest nom de camí abstracte. TIPUS

Exemples de classes de fitxers Java

Exemple 1: Programa per comprovar si un fitxer o directori existeix físicament o no.

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());> >}> >}> }>

mapa reactjs

>

logotip de java

>

Sortida

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>

Exemple 2: Programa per mostrar tot el contingut d'un directori

Aquí acceptarem un nom de directori del teclat i després mostrarem tot el contingut del directori. Per a aquest propòsit, el mètode list() es pot utilitzar com:

String arr[]=f.list();>

A la declaració anterior, el mètode list() fa que totes les entrades del directori es copien a la matriu arr[] . A continuació, passeu aquests elements de matriu arr[i] a l'objecte File i proveu-los per saber si representen un fitxer o directori.

Java


descarregar video de youtube vlc



// 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'); } }>

>

>

multiplexor

Sortida

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>

Publicació relacionada: FileReader i FileWriter a Java