logo

Classe Java.io.File in Java

La classe File Java è la rappresentazione Java di un percorso di file o directory. Poiché i nomi di file e directory hanno formati diversi su piattaforme diverse, una semplice stringa non è adeguata per denominarli. La classe Java File contiene diversi metodi per lavorare con il nome del percorso, eliminare e rinominare file, creare nuove directory, elencare il contenuto di una directory e determinare diversi attributi comuni di file e directory.

  • È una rappresentazione astratta di file e percorsi di directory.
  • Un percorso, astratto o in forma di stringa, può essere assoluto o relativo. Il genitore di un percorso astratto può essere ottenuto invocando il metodo getParent() di questa classe.
  • Prima di tutto, dovremmo creare l'oggetto della classe File passandogli il nome del file o della directory. Un file system può implementare restrizioni a determinate operazioni sull'effettivo oggetto del file system, come lettura, scrittura ed esecuzione. Queste restrizioni sono collettivamente note come autorizzazioni di accesso.
  • Le istanze della classe File sono immutabili; cioè, una volta creato, il percorso astratto rappresentato da un oggetto File non cambierà mai.

Come creare un oggetto file?

Un oggetto File viene creato passando una stringa che rappresenta il nome di un file, una String o un altro oggetto File. Per esempio,



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

Questo definisce un nome file astratto per il file geeks nella directory /usr/local/bin. Questo è un nome di file astratto assoluto.

Campi nella classe File in Java

Campo

alberi avl

Tipo



Descrizione

pathSeperator Corda il carattere o la stringa utilizzata per separare i singoli percorsi in un elenco di percorsi del file system.
pathSeperatorChar Car il carattere utilizzato per separare i singoli percorsi in un elenco di percorsi del file system.
separatore Corda carattere separatore del nome predefinito rappresentato come una stringa.
separatoreChar Car carattere separatore del nome predefinito.

Costruttori della classe di file Java

    File(File genitore, String figlio): crea una nuova istanza File da un percorso astratto padre e una stringa del nome percorso figlio. File (nome percorso stringa): crea una nuova istanza File convertendo la stringa del nome percorso specificata in un nome percorso astratto. File(String parent, String child): crea una nuova istanza File da una stringa del nome di percorso padre e da una stringa del nome di percorso figlio. File(URI uri): crea una nuova istanza File convertendo il file specificato: URI in un percorso astratto.

Metodi della classe File in Java

Si No. Metodo Descrizione Tipo di reso
1. puòEseguire() Verifica se l'applicazione può eseguire il file indicato da questo percorso astratto. booleano
2. puòLeggere() Verifica se l'applicazione può leggere il file indicato da questo percorso astratto. booleano
3. puòScrivere() Verifica se l'applicazione può modificare il file indicato da questo percorso astratto. booleano
4. confrontaCon(percorso file) Confronta lessicograficamente due percorsi astratti. int
5. creaNuovoFile() Crea atomicamente un nuovo file vuoto denominato con questo percorso astratto. booleano
6. createTempFile(Prefisso stringa, Suffisso stringa) Crea un file vuoto nella directory predefinita dei file temporanei. File
7. eliminare() Elimina il file o la directory indicata da questo percorso astratto. booleano
8. è uguale a(Oggetto oggetto) Verifica l'uguaglianza di questo percorso astratto con l'oggetto specificato. booleano
9. esiste() Verifica se esiste il file o la directory indicata da questo percorso astratto. booleano
10. getAbsolutePath() Restituisce la stringa del percorso assoluto di questo percorso astratto. Corda
undici. elenco() Restituisce un array di stringhe che denominano i file e le directory nella directory. Corda[]
12. getFreeSpace() Restituisce il numero di byte non allocati nella partizione. lungo
13. getNome() Restituisce il nome del file o della directory indicato da questo percorso astratto. Corda
14. getParent() Restituisce la stringa del percorso del genitore di questo percorso astratto. Corda
quindici. getFileParent() Restituisce il percorso astratto del genitore di questo percorso astratto. File
16. getPath() Converte questo nome di percorso astratto in una stringa di nome di percorso. Corda
17. setSolaLettura() Contrassegna il file o la directory denominata in modo che siano consentite solo le operazioni di lettura. booleano
18. èDirectory() Verifica se il file indicato da questo percorso è una directory. booleano
19. èFile() Verifica se il file indicato da questo percorso astratto è un file normale. booleano
venti. è nascosto() Verifica se il file denominato da questo percorso astratto è un file nascosto. booleano
ventuno. lunghezza() Restituisce la lunghezza del file indicata da questo percorso astratto. lungo
22. elencoFile() Restituisce un array di percorsi astratti che denotano i file nella directory. File[]
23. mkdir() Crea la directory denominata da questo percorso astratto. booleano
24. rinominareTo(Destinazione file) Rinomina il file indicato da questo percorso astratto. booleano
25. setExecutable(eseguibile booleano) Un metodo pratico per impostare l'autorizzazione di esecuzione del proprietario. booleano
26. setReadable(leggibile booleano) Un metodo pratico per impostare l'autorizzazione di lettura del proprietario. booleano
27. setReadable(leggibile booleano, solo proprietario booleano) Imposta il permesso di lettura del proprietario o di tutti. booleano
28. setWritable(scrivibile booleano) Un metodo pratico per impostare il permesso di scrittura del proprietario. booleano
29. accordare() Restituisce la stringa del percorso di questo percorso astratto. Corda
30. toURI() Costruisce un URI di file che rappresenta questo percorso astratto. TIPO

Esempi di classi di file Java

Esempio 1: Programma per verificare se un file o una directory esiste fisicamente oppure no.

Giava






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

convertire una stringa fino ad oggi

>

formato stringa java

>

Produzione

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>

Esempio 2: Programma per visualizzare tutto il contenuto di una directory

Qui accetteremo il nome di una directory dalla tastiera e quindi visualizzeremo tutto il contenuto della directory. A questo scopo, il metodo list() può essere utilizzato come:

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

Nell'istruzione precedente, il metodo list() fa sì che tutte le voci della directory vengano copiate nell'array arr[] . Quindi passa questi elementi dell'array arr[i] all'oggetto File e testali per sapere se rappresentano un file o una directory.

Giava


ricerca binaria in 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'); } }>

>

>

valore stringa di

Produzione

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>

Articolo correlato: FileReader e FileWriter in Java