V Jave, a Súbor je abstraktný dátový typ. Pomenované umiestnenie používané na ukladanie súvisiacich informácií je známe ako a Súbor . Je ich viacero Operácie so súbormi Páči sa mi to vytvorenie nového súboru, získanie informácií o súbore, zápis do súboru, čítanie zo súboru a odstránením súboru .
Predtým, ako pochopíme operácie so súbormi, je potrebné, aby sme ich poznali Prúd a Metódy súborov . Ak máte vedomosti o oboch, môžete to preskočiť.
Prúd
Séria údajov sa označuje ako potok . In Java , Prúd sa delí na dva typy, tj. Byte Stream a Prúd postáv .
Byte Stream
Byte Stream sa týka hlavne bajtových dát. Proces spracovania súborov s bajtovým tokom je proces, v ktorom je poskytnutý vstup a vykonaný s bajtovými dátami.
Prúd postáv
Prúd postáv sa týka hlavne údajov o znakoch. Proces spracovania súboru so znakovým tokom je proces, v ktorom je poskytnutý vstup a vykonaný so znakovými dátami.
Ak chcete získať viac informácií o streame, kliknite tu .
Metódy tried súborov Java
Áno nie. | Metóda | Typ návratu | Popis |
---|---|---|---|
1. | canRead() | Boolean | The canRead() metóda sa používa na kontrolu, či dokážeme prečítať údaje súboru alebo nie. |
2. | createNewFile() | Boolean | The createNewFile() metóda sa používa na vytvorenie nového prázdneho súboru. |
3. | canWrite() | Boolean | The canWrite() metóda sa používa na kontrolu, či môžeme dáta zapísať do súboru alebo nie. |
4. | existuje() | Boolean | The existuje() metóda sa používa na kontrolu, či je zadaný súbor prítomný alebo nie. |
5. | vymazať () | Boolean | The vymazať () metóda sa používa na odstránenie súboru. |
6. | getName() | Reťazec | The getName() metóda sa používa na nájdenie názvu súboru. |
7. | getAbsolutePath() | Reťazec | The getAbsolutePath() metóda sa používa na získanie absolútnej cesty k súboru. |
8. | dĺžka () | Dlhé | The dĺžka () metóda sa používa na získanie veľkosti súboru v bajtoch. |
9. | zoznam() | Reťazec[] | The zoznam() metóda sa používa na získanie poľa súborov dostupných v adresári. |
10. | mkdir() | Boolean | The mkdir() metóda sa používa na vytvorenie nového adresára. |
Operácie so súbormi
So súborom môžeme vykonať nasledujúcu operáciu:
- Vytvorte súbor
- Získajte informácie o súbore
- Zápis do súboru
- Čítať zo súboru
- Odstrániť súbor
Vytvorte súbor
Vytvorte súbor sa vykoná operácia na vytvorenie nového súboru. Používame createNewFile() metóda súboru. The createNewFile() metóda vráti hodnotu true, keď úspešne vytvorí nový súbor, a vráti hodnotu false, keď súbor už existuje.
Zoberme si príklad vytvorenia súboru, aby sme pochopili, ako môžeme použiť súbor createNewFile() spôsob vykonania tejto operácie.
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(); } } }
Výkon:
Vysvetlenie:
Vo vyššie uvedenom kóde importujeme triedu File a IOException na vykonávanie operácií so súbormi a spracovanie chýb. Vytvárame f0 objekt triedy File a špecifikujeme umiestnenie adresára, kde chceme súbor vytvoriť. V bloku try zavoláme createNewFile() metódou cez f0 objekt na vytvorenie nového súboru v zadanom umiestnení. Ak metóda vráti hodnotu false, preskočí do sekcie else. Ak sa vyskytne nejaká chyba, spracuje sa v bloku catch.
Získajte informácie o súbore
Operácia sa vykoná na získanie informácií o súbore. Na získanie informácií o súbore používame niekoľko metód, ako je názov, absolútna cesta, je čitateľný, zapisovateľný a dĺžka.
Zoberme si príklad, aby sme pochopili, ako používať metódy súboru na získanie informácií o súbore.
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.'); } } }
Výkon:
Popis:
Vo vyššie uvedenom kóde importujeme java.io.File zabaliť a vytvoriť triedu FileInfo . V hlavnej metóde vytvoríme objekt z textového súboru, ktorý sme vytvorili v našom predchádzajúcom príklade. Existenciu súboru skontrolujeme pomocou podmieneného príkazu a ak je prítomný, získame o ňom nasledujúce informácie:
- Názov súboru získame pomocou getName()
- Absolútnu cestu k súboru získame pomocou getAbsolutePath() metóda súboru.
- Skontrolujeme, či môžeme zapisovať údaje do súboru alebo nie pomocou canWrite()
- Skontrolujeme, či môžeme čítať údaje súboru alebo nie pomocou canRead()
- Dĺžku súboru získame pomocou dĺžka ()
Ak súbor neexistuje, zobrazíme vlastnú správu.
Zápis do súboru
Ďalšia operácia, ktorú môžeme so súborom vykonať, je 'zápis do súboru' . Na zapisovanie údajov do súboru použijeme FileWriter trieda a jej písať () metóda spolu. Musíme uzavrieť prúd pomocou Zavrieť() spôsob získania pridelených zdrojov.
Uveďme si príklad, aby sme pochopili, ako môžeme zapisovať dáta do súboru.
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(); } } }
Výkon:
Vysvetlenie:
Vo vyššie uvedenom kóde importujeme java.io.FileWriter a java.io.IOException triedy. Vytvoríme triedu WriteToFile a v jej hlavnej metóde použijeme metódu Skús chytiť blokovať. V časti try vytvoríme inštanciu triedy FileWriter, t.j. fwrite . Voláme na písať metódy triedy FileWriter a odovzdať obsah tej funkcii, ktorú chceme napísať. Potom zavoláme Zavrieť() metóda triedy FileWriter na zatvorenie toku súborov. Po napísaní obsahu a zatvorení streamu vytlačíme vlastnú správu.
koľko rokov má pete davidson
Ak v sekcii try dostaneme nejakú chybu, preskočí na blok catch. V záchytnom bloku riešime IOException a vytlačte si vlastnú správu.
Čítať zo súboru
Ďalšia operácia, ktorú môžeme so súborom vykonať, je 'čítať zo súboru' . Na zapisovanie údajov do súboru použijeme Skener trieda. Tu musíme zatvoriť prúd pomocou Zavrieť() metóda. Vytvoríme inštanciu Trieda skenera a použiť hasNextLine() metóda dalsiriadok() metóda na získanie údajov zo súboru.
Zoberme si príklad, aby sme pochopili, ako môžeme čítať údaje zo súboru.
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(); } } }
Výkon:
Vysvetlenie:
Vo vyššie uvedenom kóde importujeme 'java.util.Scannner', 'java.io.File' a 'java.io.IOException' triedy. Vytvárame triedu ReadFromFile a vo svojej hlavnej metóde používame try-catch blok . V časti try vytvoríme inštanciu oboch Skener a Súbor triedy. Prechádzame cez Súbor triedny objekt k Skener objekt triedy a potom iterujte objekt triedy skenera pomocou 'Kým' zacykliť a vytlačiť každý riadok súboru. Musíme tiež zavrieť objekt triedy skenera, preto použijeme funkciu close(). Ak v sekcii try dostaneme nejakú chybu, preskočí na blok catch. V bloku catch spracovávame IOException a vytlačíme vlastnú správu.
Odstrániť súbor
Ďalšia operácia, ktorú môžeme so súborom vykonať, je 'vymazanie súboru' . Na vymazanie súboru použijeme vymazať () metóda súboru. Nemusíme zatvárať prúd pomocou Zavrieť() pretože na mazanie súboru nepoužívame triedu FileWriter ani triedu Scanner.
Uveďme si príklad, aby sme pochopili, ako môžeme zapisovať dáta do súboru.
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.'); } } }
Výkon:
Vysvetlenie:
Vo vyššie uvedenom kóde importujeme Súbor triedu a vytvorte triedu Vymazať súbor . V metóde main() triedy vytvárame f0 objekt súboru, ktorý chceme vymazať. V ak vyhlásenie, nazývame vymazať () metóda súboru pomocou objektu f0. Ak metóda delete() vráti hodnotu true, vytlačíme vlastnú správu o úspechu. V opačnom prípade preskočí do sekcie else, kde vytlačíme neúspešnú vlastnú správu.
Všetky vyššie uvedené operácie sa používajú na čítanie, zápis, mazanie a vytváranie súborov programovo.