logo

Filhandlinger i Java

I Java, en Fil er en abstrakt datatype. Et navngivet sted, der bruges til at gemme relateret information, er kendt som en Fil . Der er flere Filhandlinger synes godt om oprette en ny fil, få information om fil, skrive ind i en fil, læse fra en fil og sletning af en fil .

Før vi forstår filhandlingerne, kræves det, at vi har kendskab til Strøm og Fil metoder . Hvis du har viden om dem begge, kan du springe det over.

konverter dato til streng

Strøm

En række data omtales som en strøm . I Java , Strøm er opdelt i to typer, dvs. Byte Stream og Karakterstrøm .

Filhandlinger i Java

Byte Stream

Byte Stream er hovedsageligt involveret i bytedata. En filhåndteringsproces med en bytestrøm er en proces, hvor en input leveres og udføres med bytedataene.

Karakterstrøm

Karakterstrøm er hovedsageligt involveret i karakterdata. En filhåndteringsproces med en tegnstrøm er en proces, hvor en input leveres og udføres med tegndataene.

For at få mere viden om strømmen, Klik her .

Java-filklassemetoder

Ja Nej. Metode Returtype Beskrivelse
1. kan læse() Boolean Det kan læse() metode bruges til at kontrollere, om vi kan læse filens data eller ej.
2. opretteNyFil() Boolean Det opretteNyFil() metode bruges til at oprette en ny tom fil.
3. canWrite() Boolean Det canWrite() metode bruges til at kontrollere, om vi kan skrive dataene ind i filen eller ej.
4. eksisterer() Boolean Det eksisterer() metode bruges til at kontrollere, om den angivne fil er til stede eller ej.
5. slet() Boolean Det slet() metode bruges til at slette en fil.
6. getName() Snor Det getName() metode bruges til at finde filnavnet.
7. getAbsolutePath() Snor Det getAbsolutePath() metode bruges til at få filens absolutte stinavn.
8. længde() Lang Det længde() metode bruges til at få størrelsen på filen i bytes.
9. liste() Snor[] Det liste() metode bruges til at få en række af filerne tilgængelige i mappen.
10. mkdir() Boolean Det mkdir() metode bruges til at oprette en ny mappe.

Filhandlinger

Vi kan udføre følgende handling på en fil:

  • Opret en fil
  • Få filoplysninger
  • Skriv til en fil
  • Læs fra en fil
  • Slet en fil
Filhandlinger i Java

Opret en fil

Opret en fil handling udføres for at oprette en ny fil. Vi bruger opretteNyFil() filmetode. Det opretteNyFil() metoden returnerer sand, når den opretter en ny fil og returnerer falsk, når filen allerede eksisterer.

Lad os tage et eksempel på at oprette en fil for at forstå, hvordan vi kan bruge opretteNyFil() metode til at udføre denne 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(); } } } 

Produktion:

Filhandlinger i Java
Filhandlinger i Java

Forklaring:

I ovenstående kode importerer vi File- og IOException-klassen til at udføre henholdsvis filoperation og håndteringsfejl. Vi skaber f0 objekt af klassen File og angiv placeringen af ​​den mappe, hvor vi vil oprette en fil. I prøveblokken kalder vi opretteNyFil() metode gennem f0 objekt for at oprette en ny fil på den angivne placering. Hvis metoden returnerer falsk, springer den til andet afsnit. Hvis der er en fejl, bliver den håndteret i fangblokken.

Få filoplysninger

Handlingen udføres for at få filoplysningerne. Vi bruger flere metoder til at få information om filen som navn, absolut sti, er læsbar, er skrivbar og længde.

Lad os tage et eksempel for at forstå, hvordan man bruger filmetoder til at få oplysninger om filen.

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

Produktion:

Filhandlinger i Java

Beskrivelse:

I ovenstående kode importerer vi java.io.fil pakke og oprette en klasse FileInfo . I hovedmetoden opretter vi et objekt af tekstfilen, som vi har oprettet i vores tidligere eksempel. Vi kontrollerer eksistensen af ​​filen ved hjælp af en betinget erklæring, og hvis den er til stede, får vi følgende information om den fil:

  1. Vi får navnet på filen ved hjælp af getName()
  2. Vi får den absolutte sti til filen ved hjælp af getAbsolutePath() metoden for filen.
  3. Vi tjekker, om vi kan skrive data ind i en fil eller ej ved hjælp af canWrite()
  4. Vi kontrollerer, om vi kan læse dataene i filen eller ej ved hjælp af kan læse()
  5. Vi får længden af ​​filen ved at bruge længde()

Hvis filen ikke findes, viser vi en tilpasset besked.

Skriv til en fil

Den næste operation, som vi kan udføre på en fil, er 'skriver i en fil' . For at skrive data ind i en fil, vil vi bruge FileWriter klasse og dens skrive() metode sammen. Vi skal lukke strømmen ved hjælp af tæt() metode til at hente de tildelte ressourcer.

Lad os tage et eksempel for at forstå, hvordan vi kan skrive data ind i en fil.

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

Produktion:

Filhandlinger i Java
Filhandlinger i Java

Forklaring:

I ovenstående kode importerer vi java.io.FileWriter og java.io.IOException klasser. Vi opretter en klasse WriteToFile, og i dens hovedmetode bruger vi try-catch blok. I prøveafsnittet opretter vi en forekomst af FileWriter-klassen, dvs. fwrite . Vi kalder skrive metoden for FileWriter-klassen og videregive indholdet til den funktion, som vi vil skrive. Derefter ringer vi til tæt() metode i FileWriter-klassen for at lukke filstrømmen. Efter at have skrevet indholdet og lukket streamen, udskriver vi en tilpasset besked.

Hvis vi får en fejl i prøveafsnittet, hopper den til catch-blokken. I fangblokken håndterer vi IOException og udskriv en brugerdefineret besked.

task manager linux

Læs fra en fil

Den næste operation, som vi kan udføre på en fil, er 'læs fra en fil' . For at skrive data ind i en fil, vil vi bruge Scanner klasse. Her skal vi lukke strømmen ved hjælp af tæt() metode. Vi vil oprette en instans af Scanner klasse og bruge hasNextLine() metode næste linje() metode for at hente data fra filen.

Lad os tage et eksempel for at forstå, hvordan vi kan læse data fra en fil.

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

Produktion:

Filhandlinger i Java

Forklaring:

I ovenstående kode importerer vi 'java.util.Scanner', 'java.io.File' og 'java.io.IOException' klasser. Vi opretter en klasse Læs Fra Fil , og i sin hovedmetode bruger vi try-catch blok . I prøveafsnittet opretter vi en forekomst af både Scanner og Fil klasser. Vi passerer Fil klasseobjekt til Scanner klasseobjekt, og gentag derefter scannerklasseobjektet ved hjælp af 'Mens' loop og udskriv hver linje i filen. Vi skal også lukke scannerklasseobjektet, så vi bruger close()-funktionen. Hvis vi får en fejl i prøveafsnittet, hopper den til catch-blokken. I catch-blokken håndterer vi IOException og udskriver en tilpasset besked.

Slet en fil

Den næste operation, som vi kan udføre på en fil, er 'sletter en fil' . For at slette en fil, vil vi bruge slet() metoden for filen. Vi behøver ikke at lukke strømmen ved hjælp af tæt() metode, fordi vi hverken bruger FileWriter-klassen eller Scanner-klassen til at slette en fil.

Lad os tage et eksempel for at forstå, hvordan vi kan skrive data ind i en fil.

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

Produktion:

Filhandlinger i Java

Forklaring:

I ovenstående kode importerer vi Fil klasse og opret en klasse Slet fil . I klassens main()-metode opretter vi f0 objektet for den fil, vi ønsker at slette. I den hvis erklæring, kalder vi slet() metoden for filen ved hjælp af f0-objektet. Hvis delete()-metoden returnerer true, udskriver vi den brugerdefinerede succesmeddelelse. Ellers springer den til else-sektionen, hvor vi udskriver den mislykkede brugerdefinerede besked.

Alle de ovennævnte handlinger bruges til at læse, skrive, slette og oprette filer programmatisk.