Java - Classe di file

La classe Java File rappresenta i file e i percorsi delle directory in modo astratto. Questa classe viene utilizzata per la creazione di file e directory, la ricerca di file, l'eliminazione di file, ecc.

L'oggetto File rappresenta il file / directory effettivo sul disco. Di seguito è riportato l'elenco dei costruttori per creare un oggetto File.

Sr.No. Metodo e descrizione
1

File(File parent, String child)

Questo costruttore crea una nuova istanza di File da un nome di percorso astratto padre e una stringa di percorso figlio.

2

File(String pathname)

Questo costruttore crea una nuova istanza di File convertendo la stringa del percorso specificato in un percorso astratto.

3

File(String parent, String child)

Questo costruttore crea una nuova istanza di File da una stringa del nome del percorso padre e una stringa del nome del percorso figlio.

4

File(URI uri)

Questo costruttore crea una nuova istanza di File convertendo il file specificato: URI in un percorso astratto.

Una volta che hai l' oggetto File in mano, c'è un elenco di metodi di supporto che possono essere usati per manipolare i file.

Sr.No. Metodo e descrizione
1

public String getName()

Restituisce il nome del file o della directory indicato da questo percorso astratto.

2

public String getParent()

Restituisce la stringa del nome del percorso del genitore di questo percorso astratto o null se questo percorso non nomina una directory principale.

3

public File getParentFile()

Restituisce il percorso astratto del genitore di questo percorso astratto o null se questo percorso non nomina una directory padre.

4

public String getPath()

Converte questo percorso astratto in una stringa di percorso.

5

public boolean isAbsolute()

Verifica se questo percorso astratto è assoluto. Restituisce vero se questo percorso astratto è assoluto, falso in caso contrario.

6

public String getAbsolutePath()

Restituisce la stringa del percorso assoluto di questo percorso astratto.

7

public boolean canRead()

Verifica se l'applicazione può leggere il file indicato da questo percorso astratto. Restituisce vero se e solo se il file specificato da questo percorso astratto esiste e può essere letto dall'applicazione; altrimenti falso.

8

public boolean canWrite()

Verifica se l'applicazione può modificare il file indicato da questo percorso astratto. Restituisce vero se e solo se il file system contiene effettivamente un file indicato da questo percorso astratto e l'applicazione è autorizzata a scrivere nel file; altrimenti falso.

9

public boolean exists()

Verifica se esiste il file o la directory indicata da questo percorso astratto. Restituisce vero se e solo se esiste il file o la directory indicata da questo percorso astratto; altrimenti falso.

10

public boolean isDirectory()

Verifica se il file indicato da questo percorso astratto è una directory. Restituisce vero se e solo se il file denotato da questo percorso astratto esiste ed è una directory; altrimenti falso.

11

public boolean isFile()

Verifica se il file indicato da questo percorso astratto è un file normale. Un file è normale se non è una directory e, inoltre, soddisfa altri criteri dipendenti dal sistema. Qualsiasi file non di directory creato da un'applicazione Java è garantito come un file normale. Restituisce vero se e solo se il file denotato da questo percorso astratto esiste ed è un file normale; altrimenti falso.

12

public long lastModified()

Restituisce l'ora in cui il file indicato da questo percorso astratto è stato modificato l'ultima volta. Restituisce un valore lungo che rappresenta l'ora dell'ultima modifica del file, misurata in millisecondi dall'epoca (00:00:00 GMT, 1 gennaio 1970) o 0L se il file non esiste o se si verifica un errore di I / O.

13

public long length()

Restituisce la lunghezza del file indicato da questo percorso astratto. Il valore restituito non è specificato se questo percorso denota una directory.

14

public boolean createNewFile() throws IOException

Atomicamente crea un nuovo file vuoto denominato da questo percorso astratto se e solo se un file con questo nome non esiste ancora. Restituisce vero se il file denominato non esiste ed è stato creato correttamente; false se il file denominato esiste già.

15

public boolean delete()

Elimina il file o la directory contrassegnati da questo percorso astratto. Se questo percorso indica una directory, la directory deve essere vuota per essere eliminata. Restituisce vero se e solo se il file o la directory viene eliminata correttamente; altrimenti falso.

16

public void deleteOnExit()

Richiede che il file o la directory indicati da questo percorso astratto vengano eliminati al termine della macchina virtuale.

17

public String[] list()

Restituisce un array di stringhe che denominano i file e le directory nella directory indicata da questo percorso astratto.

18

public String[] list(FilenameFilter filter)

Restituisce un array di stringhe che denominano i file e le directory nella directory indicata da questo percorso astratto che soddisfano il filtro specificato.

20

public File[] listFiles()

Restituisce un array di nomi di percorso astratti che denotano i file nella directory indicata da questo percorso astratto.

21

public File[] listFiles(FileFilter filter)

Restituisce un array di percorsi astratti che denotano i file e le directory nella directory indicata da questo percorso astratto che soddisfano il filtro specificato.

22

public boolean mkdir()

Crea la directory denominata da questo percorso astratto. Restituisce vero se e solo se la directory è stata creata; altrimenti falso.

23

public boolean mkdirs()

Crea la directory denominata da questo percorso astratto, incluse tutte le directory padre necessarie ma inesistenti. Restituisce vero se e solo se la directory è stata creata, insieme a tutte le directory padre necessarie; altrimenti falso.

24

public boolean renameTo(File dest)

Rinomina il file indicato da questo percorso astratto. Restituisce vero se e solo se la ridenominazione è riuscita; altrimenti falso.

25

public boolean setLastModified(long time)

Imposta l'ora dell'ultima modifica del file o della directory denominata da questo percorso astratto. Restituisce vero se e solo se l'operazione è riuscita; altrimenti falso.

26

public boolean setReadOnly()

Contrassegna il file o la directory denominati da questo percorso astratto in modo che siano consentite solo le operazioni di lettura. Restituisce vero se e solo se l'operazione è riuscita; altrimenti falso.

27

public static File createTempFile(String prefix, String suffix, File directory) throws IOException

Crea un nuovo file vuoto nella directory specificata, utilizzando le stringhe di prefisso e suffisso fornite per generarne il nome. Restituisce un percorso astratto che denota un file vuoto appena creato.

28

public static File createTempFile(String prefix, String suffix) throws IOException

Crea un file vuoto nella directory dei file temporanei predefinita, utilizzando il prefisso e il suffisso forniti per generarne il nome. Invocare questo metodo equivale a invocare createTempFile (prefix, suffix, null). Restituisce un percorso astratto che denota un file vuoto appena creato.

29

public int compareTo(File pathname)

Confronta due nomi di percorso astratti lessicograficamente. Restituisce zero se l'argomento è uguale a questo percorso astratto, un valore inferiore a zero se questo percorso astratto è lessicograficamente inferiore all'argomento o un valore maggiore di zero se questo percorso astratto è lessicograficamente maggiore dell'argomento.

30

public int compareTo(Object o)

Confronta questo percorso astratto con un altro oggetto. Restituisce zero se l'argomento è uguale a questo percorso astratto, un valore inferiore a zero se questo percorso astratto è lessicograficamente inferiore all'argomento o un valore maggiore di zero se questo percorso astratto è lessicograficamente maggiore dell'argomento.

31

public boolean equals(Object obj)

Verifica l'uguaglianza di questo percorso astratto con l'oggetto specificato. Restituisce vero se e solo se l'argomento non è nullo ed è un percorso astratto che denota lo stesso file o directory di questo percorso astratto.

32

public String toString()

Restituisce la stringa del percorso di questo percorso astratto. Questa è solo la stringa restituita dal metodo getPath ().

Esempio

Di seguito è riportato un esempio per dimostrare l'oggetto File:

package com.tutorialspoint;
import java.io.File;

public class FileDemo {
   
   public static void main(String[] args) {
      File f = null;
      String[] strs = {"test1.txt", "test2.txt"};
      try {
         // for each string in string array 
         for(String s:strs ) {
            // create new file
            f = new File(s);
            
            // true if the file is executable
            boolean bool = f.canExecute();
            
            // find the absolute path
            String a = f.getAbsolutePath(); 
            
            // prints absolute path
            System.out.print(a);
            
            // prints
            System.out.println(" is executable: "+ bool);
         } 
      } catch (Exception e) {
         // if any I/O error occurs
         e.printStackTrace();
      }
   }
}

Considera che esiste un file eseguibile test1.txt e un altro file test2.txt non è eseguibile nella directory corrente. Compiliamo ed eseguiamo il programma sopra, questo produrrà il seguente risultato:

Produzione

/home/cg/root/2880380/test1.txt is executable: false
/home/cg/root/2880380/test2.txt is executable: false