In Java, a Datei ist ein abstrakter Datentyp. Ein benannter Ort, an dem verwandte Informationen gespeichert werden, wird als a bezeichnet Datei . Es gibt einige Dateioperationen wie Erstellen einer neuen Datei, Abrufen von Informationen über eine Datei, Schreiben in eine Datei, Lesen aus einer Datei Und Löschen einer Datei .
Bevor wir die Dateioperationen verstehen, müssen wir über Kenntnisse verfügen Strom Und Dateimethoden . Wenn Sie über beides Bescheid wissen, können Sie es überspringen.
Strom
Eine Reihe von Daten wird als bezeichnet ein Strom . In Java , Strom wird in zwei Typen eingeteilt, d. h. Byte-Stream Und Charakter-Stream .
Byte-Stream
Byte-Stream beschäftigt sich hauptsächlich mit Byte-Daten. Ein Dateiverarbeitungsprozess mit einem Byte-Stream ist ein Prozess, bei dem eine Eingabe bereitgestellt und mit den Byte-Daten ausgeführt wird.
Charakter-Stream
Charakter-Stream beschäftigt sich hauptsächlich mit Charakterdaten. Ein Dateiverarbeitungsprozess mit einem Zeichenstrom ist ein Prozess, bei dem eine Eingabe mit den Zeichendaten bereitgestellt und ausgeführt wird.
Um mehr über den Stream zu erfahren, klicken Sie hier .
Methoden der Java-Dateiklasse
Ja Nein. | Methode | Rückgabetyp | Beschreibung |
---|---|---|---|
1. | kann lesen() | Boolescher Wert | Der kann lesen() Mit dieser Methode wird überprüft, ob wir die Daten der Datei lesen können oder nicht. |
2. | createNewFile() | Boolescher Wert | Der createNewFile() -Methode wird verwendet, um eine neue leere Datei zu erstellen. |
3. | kann schreiben() | Boolescher Wert | Der kann schreiben() Mit dieser Methode wird überprüft, ob wir die Daten in die Datei schreiben können oder nicht. |
4. | existiert() | Boolescher Wert | Der existiert() Mit der Methode wird überprüft, ob die angegebene Datei vorhanden ist oder nicht. |
5. | löschen() | Boolescher Wert | Der löschen() Die Methode wird zum Löschen einer Datei verwendet. |
6. | getName() | Zeichenfolge | Der getName() Die Methode wird verwendet, um den Dateinamen zu finden. |
7. | getAbsolutePath() | Zeichenfolge | Der getAbsolutePath() Die Methode wird verwendet, um den absoluten Pfadnamen der Datei abzurufen. |
8. | Länge() | Lang | Der Länge() Die Methode wird verwendet, um die Größe der Datei in Bytes zu ermitteln. |
9. | Liste() | String[] | Der Liste() Die Methode wird verwendet, um ein Array der im Verzeichnis verfügbaren Dateien abzurufen. |
10. | mkdir() | Boolescher Wert | Der mkdir() Die Methode wird zum Erstellen eines neuen Verzeichnisses verwendet. |
Dateioperationen
Wir können die folgende Operation für eine Datei ausführen:
- Erstellen Sie eine Datei
- Dateiinformationen abrufen
- In eine Datei schreiben
- Aus einer Datei lesen
- Eine Datei löschen
Erstellen Sie eine Datei
Erstellen Sie eine Datei Der Vorgang wird ausgeführt, um eine neue Datei zu erstellen. Wir benutzen das createNewFile() Methode der Datei. Der createNewFile() Die Methode gibt true zurück, wenn eine neue Datei erfolgreich erstellt wurde, und false, wenn die Datei bereits vorhanden ist.
Nehmen wir ein Beispiel für die Erstellung einer Datei, um zu verstehen, wie wir die verwenden können createNewFile() Methode zum Ausführen dieser Operation.
CreateFile.java
// Importing File class import java.io.File; // Importing the IOException class for handling errors import java.io.IOException; class CreateFile { public static void main(String args[]) { try { // Creating an object of a file File f0 = new File('D:FileOperationExample.txt'); if (f0.createNewFile()) { System.out.println('File ' + f0.getName() + ' is created successfully.'); } else { System.out.println('File is already exist in the directory.'); } } catch (IOException exception) { System.out.println('An unexpected error is occurred.'); exception.printStackTrace(); } } }
Ausgabe:
Erläuterung:
Im obigen Code importieren wir die Klassen „File“ und „IOException“, um Dateivorgänge auszuführen bzw. Fehler zu behandeln. Wir schaffen das f0 Objekt der File-Klasse und geben Sie den Speicherort des Verzeichnisses an, in dem wir eine Datei erstellen möchten. Im try-Block rufen wir den auf createNewFile() Methode durch die f0 Objekt, um eine neue Datei am angegebenen Speicherort zu erstellen. Wenn die Methode „false“ zurückgibt, springt sie zum Abschnitt „else“. Wenn ein Fehler auftritt, wird dieser im Catch-Block behandelt.
Java-Pause
Dateiinformationen abrufen
Der Vorgang wird ausgeführt, um die Dateiinformationen abzurufen. Wir verwenden verschiedene Methoden, um Informationen über die Datei zu erhalten, z. B. Name, absoluter Pfad, Lesbarkeit, Schreibbarkeit und Länge.
Nehmen wir ein Beispiel, um zu verstehen, wie Dateimethoden verwendet werden, um die Informationen der Datei abzurufen.
FileInfo.java
// Import the File class import java.io.File; class FileInfo { public static void main(String[] args) { // Creating file object File f0 = new File('D:FileOperationExample.txt'); if (f0.exists()) { // Getting file name System.out.println('The name of the file is: ' + f0.getName()); // Getting path of the file System.out.println('The absolute path of the file is: ' + f0.getAbsolutePath()); // Checking whether the file is writable or not System.out.println('Is file writeable?: ' + f0.canWrite()); // Checking whether the file is readable or not System.out.println('Is file readable ' + f0.canRead()); // Getting the length of the file in bytes System.out.println('The size of the file in bytes is: ' + f0.length()); } else { System.out.println('The file does not exist.'); } } }
Ausgabe:
Beschreibung:
Im obigen Code importieren wir die java.io.File verpacken und eine Klasse erstellen Dateiinformation . In der Hauptmethode erstellen wir ein Objekt der Textdatei, die wir in unserem vorherigen Beispiel erstellt haben. Wir überprüfen die Existenz der Datei mithilfe einer bedingten Anweisung und erhalten bei Vorhandensein die folgenden Informationen über diese Datei:
- Den Namen der Datei erhalten wir mit getName()
- Den absoluten Pfad der Datei erhalten wir mit getAbsolutePath() Methode der Datei.
- Wir prüfen, ob wir Daten in eine Datei schreiben können oder nicht kann schreiben()
- Wir prüfen, ob wir die Daten der Datei lesen können oder nicht kann lesen()
- Wir ermitteln die Länge der Datei, indem wir die verwenden Länge()
Wenn die Datei nicht vorhanden ist, zeigen wir eine benutzerdefinierte Meldung an.
In eine Datei schreiben
Die nächste Operation, die wir an einer Datei ausführen können, ist 'in eine Datei schreiben' . Um Daten in eine Datei zu schreiben, verwenden wir die FileWriter Klasse und ihre schreiben() Methode zusammen. Wir müssen den Stream mit schließen schließen() Methode zum Abrufen der zugewiesenen Ressourcen.
Nehmen wir ein Beispiel, um zu verstehen, wie wir Daten in eine Datei schreiben können.
schönstes Lächeln
WriteToFile.java
// Importing the FileWriter class import java.io.FileWriter; // Importing the IOException class for handling errors import java.io.IOException; class WriteToFile { public static void main(String[] args) { try { FileWriter fwrite = new FileWriter('D:FileOperationExample.txt'); // writing the content into the FileOperationExample.txt file fwrite.write('A named location used to store related information is referred to as a File.'); // Closing the stream fwrite.close(); System.out.println('Content is successfully wrote to the file.'); } catch (IOException e) { System.out.println('Unexpected error occurred'); e.printStackTrace(); } } }
Ausgabe:
Erläuterung:
Im obigen Code importieren wir die java.io.FileWriter Und java.io.IOException Klassen. Wir erstellen eine Klasse WriteToFile und verwenden in ihrer Hauptmethode die versuchen-fangen Block. Im Abschnitt „try“ erstellen wir eine Instanz der FileWriter-Klasse, d. h. fwrite . Wir nennen das schreiben Methode der FileWriter-Klasse und übergeben Sie den Inhalt an die Funktion, die wir schreiben möchten. Danach rufen wir die an schließen() Methode der FileWriter-Klasse zum Schließen des Dateistreams. Nachdem wir den Inhalt geschrieben und den Stream geschlossen haben, drucken wir eine benutzerdefinierte Nachricht.
Wenn im Try-Abschnitt ein Fehler auftritt, wird zum Catch-Block gesprungen. Im Catch-Block kümmern wir uns um die IOException und drucken Sie eine benutzerdefinierte Nachricht.
Aus einer Datei lesen
Die nächste Operation, die wir an einer Datei ausführen können, ist 'aus einer Datei lesen' . Um Daten in eine Datei zu schreiben, verwenden wir die Scanner Klasse. Hier müssen wir den Stream mit schließen schließen() Methode. Wir werden eine Instanz davon erstellen Scannerklasse und nutzen Sie die hasNextLine() Methode nächste Zeile() Methode um Daten aus der Datei zu erhalten.
Nehmen wir ein Beispiel, um zu verstehen, wie wir Daten aus einer Datei lesen können.
ReadFromFile.java
// Importing the File class import java.io.File; // Importing FileNotFoundException class for handling errors import java.io.FileNotFoundException; // Importing the Scanner class for reading text files import java.util.Scanner; class ReadFromFile { public static void main(String[] args) { try { // Create f1 object of the file to read data File f1 = new File('D:FileOperationExample.txt'); Scanner dataReader = new Scanner(f1); while (dataReader.hasNextLine()) { String fileData = dataReader.nextLine(); System.out.println(fileData); } dataReader.close(); } catch (FileNotFoundException exception) { System.out.println('Unexcpected error occurred!'); exception.printStackTrace(); } } }
Ausgabe:
Erklärung:
Im obigen Code importieren wir die 'java.util.Scanner', 'java.io.File' Und 'java.io.IOException' Klassen. Wir erstellen eine Klasse ReadFromFile , und in seiner Hauptmethode verwenden wir die Try-Catch-Block . Im Try-Abschnitt erstellen wir eine Instanz von beiden Scanner und das Datei Klassen. Wir passieren die Datei Klassenobjekt zum Scanner Klassenobjekt und iterieren Sie dann das Scanner-Klassenobjekt mithilfe von 'Während' Schleifen Sie jede Zeile der Datei ab und drucken Sie sie aus. Wir müssen auch das Scanner-Klassenobjekt schließen, also verwenden wir die Funktion close(). Wenn im Try-Abschnitt ein Fehler auftritt, wird zum Catch-Block gesprungen. Im Catch-Block behandeln wir die IOException und geben eine benutzerdefinierte Nachricht aus.
Eine Datei löschen
Die nächste Operation, die wir an einer Datei ausführen können, ist „Eine Datei löschen“ . Um eine Datei zu löschen, verwenden wir die löschen() Methode der Datei. Wir müssen den Stream nicht mit schließen schließen() Methode, da wir zum Löschen einer Datei weder die FileWriter-Klasse noch die Scanner-Klasse verwenden.
Rohit Shetty-Schauspieler
Nehmen wir ein Beispiel, um zu verstehen, wie wir Daten in eine Datei schreiben können.
DeleteFile.java
// Importing the File class import java.io.File; class DeleteFile { public static void main(String[] args) { File f0 = new File('D:FileOperationExample.txt'); if (f0.delete()) { System.out.println(f0.getName()+ ' file is deleted successfully.'); } else { System.out.println('Unexpected error found in deletion of the file.'); } } }
Ausgabe:
Erläuterung:
Im obigen Code importieren wir die Datei Klasse und erstellen Sie eine Klasse Datei löschen . In der main()-Methode der Klasse erstellen wir f0 Objekt der Datei, die wir löschen möchten. Im Wenn Aussage nennen wir die löschen() Methode der Datei mithilfe des f0-Objekts. Wenn die Methode delete() „true“ zurückgibt, drucken wir die benutzerdefinierte Erfolgsmeldung. Andernfalls wird zum Abschnitt „sonst“ gesprungen, in dem wir die fehlgeschlagene benutzerdefinierte Nachricht drucken.
Alle oben genannten Vorgänge werden zum programmgesteuerten Lesen, Schreiben, Löschen und Erstellen von Dateien verwendet.