Klasa File jest abstrakcyjną reprezentacją ścieżki pliku i katalogu. Nazwa ścieżki może być bezwzględna lub względna.
Klasa File ma kilka metod pracy z katalogami i plikami, takich jak tworzenie nowych katalogów lub plików, usuwanie i zmienianie nazw katalogów lub plików, wyświetlanie zawartości katalogu itp.
Pola
Modyfikator | Typ | Pole | Opis |
---|---|---|---|
statyczny | Strunowy | separator ścieżki | Jest to zależny od systemu znak separatora ścieżki, reprezentowany jako strunowy dla wygody. |
statyczny | zwęglać | pathSeparatorChar | Jest to znak separatora ścieżek zależny od systemu. |
statyczny | Strunowy | separator | Jest to zależny od systemu domyślny znak separatora nazw, reprezentowany dla wygody jako ciąg znaków. |
statyczny | zwęglać | separatorChar | Jest to zależny od systemu domyślny znak oddzielający nazwy. |
Konstruktorzy
Konstruktor | Opis |
---|---|
Plik (nadrzędny plik, podrzędny ciąg znaków) | Tworzy nową instancję File z nadrzędnej abstrakcyjnej nazwy ścieżki i podrzędnego ciągu ścieżki. |
Plik (nazwa ścieżki ciągu) | Tworzy nową instancję File, konwertując podany ciąg nazwy ścieżki na abstrakcyjną nazwę ścieżki. |
Plik (nadrzędny ciąg, podrzędny ciąg) | Tworzy nową instancję File z nadrzędnego ciągu ścieżki i podrzędnego ciągu ścieżki. |
Plik (URI) | Tworzy nową instancję File poprzez konwersję podanego pliku: URI na abstrakcyjną ścieżkę. |
Przydatne metody
Modyfikator i typ | metoda | Opis |
---|---|---|
plik statyczny | createTempFile (przedrostek ciągu, przyrostek ciągu) | Tworzy pusty plik w domyślnym katalogu plików tymczasowych, używając podanego przedrostka i sufiksu do wygenerowania jego nazwy. |
wartość logiczna | utwórzNowyPlik() | Tworzy atomowo nowy, pusty plik nazwany tą abstrakcyjną nazwą ścieżki wtedy i tylko wtedy, gdy plik o tej nazwie jeszcze nie istnieje. |
wartość logiczna | potrafi pisać() | Sprawdza, czy aplikacja może modyfikować plik oznaczony tą abstrakcyjną ścieżką.String[] |
wartość logiczna | możeWykonać() | Sprawdza, czy aplikacja może wykonać plik oznaczony tą abstrakcyjną ścieżką. |
wartość logiczna | można przeczytać() | Sprawdza, czy aplikacja może odczytać plik oznaczony tą abstrakcyjną ścieżką. |
wartość logiczna | jest absolutny() | Sprawdza, czy ta abstrakcyjna ścieżka jest bezwzględna. |
wartość logiczna | isDirectory() | Sprawdza, czy plik oznaczony tą abstrakcyjną nazwą ścieżki jest katalogiem. |
wartość logiczna | isFile() | Sprawdza, czy plik oznaczony tą abstrakcyjną nazwą ścieżki jest normalnym plikiem. |
Strunowy | pobierzNazwę() | Zwraca nazwę pliku lub katalogu oznaczonego tą abstrakcyjną ścieżką. |
Strunowy | getParent() | Zwraca ciąg ścieżki ścieżki nadrzędnej tej abstrakcyjnej ścieżki lub wartość null, jeśli ta ścieżka nie określa katalogu nadrzędnego. |
Ścieżka | doŚcieżki() | Zwraca obiekt java.nio.file.Path skonstruowany na podstawie tej abstrakcyjnej ścieżki. |
TYP | toURI() | Konstruuje plik: URI, który reprezentuje tę abstrakcyjną nazwę ścieżki. |
Plik[] | listaPlików() | Zwraca szyk abstrakcyjnych nazw ścieżek oznaczających pliki w katalogu wskazanym przez tę abstrakcyjną nazwę ścieżki |
długi | getFreeSpace() | Zwraca liczbę nieprzydzielonych bajtów w partycji nazwanej tą abstrakcyjną nazwą ścieżki. |
Strunowy[] | lista(filtr FilenameFilter) | Zwraca tablicę ciągów nazw plików i katalogów w katalogu oznaczonym tą abstrakcyjną nazwą ścieżki, które spełniają określony filtr. |
wartość logiczna | mkdir() | Tworzy katalog nazwany tą abstrakcyjną ścieżką. |
Przykład pliku Java 1
import java.io.*; public class FileDemo { public static void main(String[] args) { try { File file = new File('javaFile123.txt'); if (file.createNewFile()) { System.out.println('New File is created!'); } else { System.out.println('File already exists.'); } } catch (IOException e) { e.printStackTrace(); } } }
Wyjście:
New File is created!
Przykład pliku Java 2
import java.io.*; public class FileDemo2 { public static void main(String[] args) { String path = ''; boolean bool = false; try { // createing new files File file = new File('testFile1.txt'); file.createNewFile(); System.out.println(file); // createing new canonical from file object File file2 = file.getCanonicalFile(); // returns true if the file exists System.out.println(file2); bool = file2.exists(); // returns absolute pathname path = file2.getAbsolutePath(); System.out.println(bool); // if file exists if (bool) { // prints System.out.print(path + ' Exists? ' + bool); } } catch (Exception e) { // if any error occurs e.printStackTrace(); } } }
Wyjście:
testFile1.txt /home/Work/Project/File/testFile1.txt true /home/Work/Project/File/testFile1.txt Exists? true
Przykład pliku Java 3
import java.io.*; public class FileExample { public static void main(String[] args) { File f=new File('/Users/sonoojaiswal/Documents'); String filenames[]=f.list(); for(String filename:filenames){ System.out.println(filename); } } }
Wyjście:
'info.properties' 'info.properties'.rtf .DS_Store .localized Alok news apache-tomcat-9.0.0.M19 apache-tomcat-9.0.0.M19.tar bestreturn_org.rtf BIODATA.pages BIODATA.pdf BIODATA.webp struts2jars.zip workspace
Przykład pliku Java 4
import java.io.*; public class FileExample { public static void main(String[] args) { File dir=new File('/Users/sonoojaiswal/Documents'); File files[]=dir.listFiles(); for(File file:files){ System.out.println(file.getName()+' Can Write: '+file.canWrite()+' Is Hidden: '+file.isHidden()+' Length: '+file.length()+' bytes'); } } }
Wyjście:
'info.properties' Can Write: true Is Hidden: false Length: 15 bytes 'info.properties'.rtf Can Write: true Is Hidden: false Length: 385 bytes .DS_Store Can Write: true Is Hidden: true Length: 36868 bytes .localized Can Write: true Is Hidden: true Length: 0 bytes Alok news Can Write: true Is Hidden: false Length: 850 bytes apache-tomcat-9.0.0.M19 Can Write: true Is Hidden: false Length: 476 bytes apache-tomcat-9.0.0.M19.tar Can Write: true Is Hidden: false Length: 13711360 bytes bestreturn_org.rtf Can Write: true Is Hidden: false Length: 389 bytes BIODATA.pages Can Write: true Is Hidden: false Length: 707985 bytes BIODATA.pdf Can Write: true Is Hidden: false Length: 69681 bytes BIODATA.webp Can Write: true Is Hidden: false Length: 282125 bytes workspace Can Write: true Is Hidden: false Length: 1972 bytes