logo

Ako otvoriť súbor v jazyku Java

Existujú nasledujúce spôsoby, ako otvoriť súbor v jazyku Java:

  • Trieda Java Desktop
  • Trieda Java FileInputStream
  • Trieda Java BufferedReader
  • Trieda Java FileReader
  • Trieda Java Scanner
  • Balík Java nio

Trieda Java Desktop

Java Desktop trieda poskytuje OTVORENÉ() metóda na otvorenie súboru. Patrí do a java.awt balík. Implementácia desktopu závisí od platformy, takže je potrebné skontrolovať, či operačný systém podporuje alebo nepodporuje Desktop. Trieda Pracovná plocha hľadá pridruženú aplikáciu registrovanú na natívnej pracovnej ploche na spracovanie súboru. Ak neexistuje žiadna pridružená aplikácia alebo sa aplikácia nepodarí spustiť, vyvolá to FileNotFoundException . Spustí predvolený prehliadač používateľa, ktorý zobrazí zadané URI.

  • Spustí predvoleného poštového klienta používateľa s voliteľným mail-to URI.
  • Spustí zaregistrovanú aplikáciu na otvorenie, úpravu alebo tlač určeného súboru.

The OTVORENÉ() metóda triedy Desktop spustí pridruženú aplikáciu na otvorenie súboru. Ako argument berie súbor. Podpis metódy je:

 public void open (File file) throws IOException 

Metóda vyvoláva nasledujúce výnimky:

mylivecricket.in
    NullPointerException:Ak je súbor null.IllegalArgumentException:Vyhodí sa, keď súbor neexistuje.IOException:Vyhodí sa, keď k danému typu súboru nie je priradená žiadna aplikácia.UnsupportedOperationExecution:Ak aktuálna platforma nepodporuje akciu Desktop.Action.Open.

Príklad

 import java.awt.Desktop; import java.io.*; public class OpenFileExample1 { public static void main(String[] args) { try { //constructor of file class having file as argument File file = new File('C:\demo\demofile.txt'); if(!Desktop.isDesktopSupported())//check if Desktop is supported by Platform or not { System.out.println('not supported'); return; } Desktop desktop = Desktop.getDesktop(); if(file.exists()) //checks file exists or not desktop.open(file); //opens the specified file } catch(Exception e) { e.printStackTrace(); } } } 

Keď spustíme vyššie uvedený program, otvorí zadaný textový súbor v predvolenom textovom editore. Môžeme tiež otvoriť súbor .docx, .pdf a .webp.

Výkon:

Ako otvoriť súbor v jazyku Java

Trieda Java FileInputStream

Java FileInputStream trieda sa používa na otvorenie a čítanie súboru. Súbor môžeme otvoriť a prečítať pomocou konštruktora triedy FileInputStream. Podpis konštruktora je:

 public FileInputStream(File file) throws FileNotFoundException 

Akceptuje súbor ako argument. To hádže FileNotFoundException ak súbor neexistuje alebo je názov súboru adresár.

Príklad

 import java.io.*; import java.util.Scanner; public class OpenFileExample2 { public static void main(String args[]) { try { //constructor of file class having file as argument File file=new File('C:\demo\demofile.txt'); FileInputStream fis=new FileInputStream(file); //opens a connection to an actual file System.out.println('file content: '); int r=0; while((r=fis.read())!=-1) { System.out.print((char)r); //prints the content of the file } } catch(Exception e) { e.printStackTrace(); } } } 

Výkon:

Ako otvoriť súbor v jazyku Java

Trieda Java BufferedReader

Java BufferedReader trieda číta text zo vstupného prúdu znakov. Patrí do a java.io balík. Na otvorenie alebo čítanie súboru používame konštruktor triedy BufferedReader. Podpis konštruktora je:

získať spojenie
 public BufferedReader(Reader in) 

Vytvára tok vstupu znakov do vyrovnávacej pamäte, ktorý používa vstupnú vyrovnávaciu pamäť štandardnej veľkosti. Používa predvolenú veľkosť vstupnej vyrovnávacej pamäte.

Príklad

 import java.io.*; import java.util.Scanner; public class OpenFileExample3 { public static void main(String args[]) { try { //constructor of File class having file as argument File file=new File('C:\demo\demofile.txt'); //creates a buffer reader input stream BufferedReader br=new BufferedReader(new FileReader(file)); System.out.println('file content: '); int r=0; while((r=br.read())!=-1) { System.out.print((char)r); } } catch(Exception e) { e.printStackTrace(); } } } 

Výkon:

Ako otvoriť súbor v jazyku Java

Trieda Java FileReader

Java FileReader trieda sa používa aj na otváranie a čítanie súboru. Patrí do a java.io balík. Je to pohodlie pri čítaní znakov súborov. Používa sa na čítanie nespracovaných bajtov pomocou triedy FileInputStream. Na otvorenie a čítanie súboru používame konštruktor triedy FileInputStream. Podpis konštruktora je:

urobiť skript spustiteľným
 public FileReader(File file) throws FileNotFoundException 

Akceptuje súbor ako argument. To hádže FileNotFoundException ak zadaný súbor neexistuje alebo je názov súboru adresár.

Príklad

 import java.io.*; public class OpenFileExample4 { public static void main(String args[]) { try { //constructor of the File class having file as an argument FileReader fr=new FileReader('C:\demo\demofile.txt'); System.out.println('file content: '); int r=0; while((r=fr.read())!=-1) { System.out.print((char)r); //prints the content of the file } } catch(Exception e) { e.printStackTrace(); } } } 

Výkon:

Ako otvoriť súbor v jazyku Java

Trieda Java Scanner

Java Skener trieda sa používa aj na otváranie a čítanie súboru. Trieda skenera patrí do java.util balík. Konštruktor triedy Scanner sa používa na otváranie a čítanie súboru. Podpis konštruktora je:

 public scanner (File source) throws FileNotFoundException 

Ako argument prijíma súbor (na kontrolu). Tiež hádže FileNotFoundException , ak sa zdroj súboru nenájde.

Príklad

 import java.io.File; import java.util.Scanner; public class OpenFileExample5 { public static void main(String[] args) { try { File file=new File('C:\demo\demofile.txt'); Scanner sc = new Scanner(file); //file to be scanned while (sc.hasNextLine()) //returns true if and only if scanner has another token System.out.println(sc.nextLine()); } catch(Exception e) { e.printStackTrace(); } } } 

Výkon:

Ako otvoriť súbor v jazyku Java

Balík Java nio

metóda readAllLines(). : Metóda readAllLines() je metódou triedy File. Číta všetky riadky zo súboru a bajty zo súboru sa dekódujú na znaky pomocou znakovej sady UTF-8. Vráti riadky zo súboru ako zoznam. Podpis metódy je:

localdatetime java
 public static List readAllLines(Path path) throws IOException 

Kde cesta je cesta k súboru.

Vyššie uvedená metóda je ekvivalentná vyvolaniu nasledujúceho:

 File.readAllLines(path, Standard CharSets.UTF_8) 

Collections.emptyList(): Metóda emptyList() je metóda triedy Collection, ktorá patrí do balíka java.util. Používa sa na získanie prázdneho zoznamu. Podpis metódy je:

 public static final List emptyList() 

Príklad

 import java.util.*; import java.nio.charset.StandardCharsets; import java.nio.file.*; import java.io.*; public class OpenFileExample6 { public static List readFileInList(String fileName) { List lines = Collections.emptyList(); try { lines=Files.readAllLines(Paths.get(fileName), StandardCharsets.UTF_8); } catch (IOException e) { e.printStackTrace(); } return lines; } public static void main(String[] args) { List l = readFileInList('C:\demo\demofile.txt'); Iterator itr = l.iterator(); //access the elements while (itr.hasNext()) //returns true if and only if scanner has another token System.out.println(itr.next()); //prints the content of the file } } 

Výkon:

Ako otvoriť súbor v jazyku Java