logo

Kako otvoriti datoteku u Javi

Postoje sljedeći načini za otvaranje datoteke u Javi:

  • Java Desktop klasa
  • Java FileInputStream klasa
  • Klasa Java BufferedReader
  • Klasa Java FileReader
  • Klasa Java Scanner
  • Java nio paket

Java Desktop klasa

Java Desktop klasa pruža otvoren() metoda za otvaranje datoteke. Pripada a java.awt paket. Desktop implementacija ovisi o platformi, stoga je potrebno provjeriti podržava li operativni sustav Desktop ili ne. Klasa Desktop traži pridruženu aplikaciju registriranu na matičnoj radnoj površini za rukovanje datotekom. Ako ne postoji povezana aplikacija ili se aplikacija ne uspije pokrenuti, izbacuje se FileNotFoundException . Pokreće korisnički zadani preglednik za prikaz određenog URI-ja.

  • Pokreće korisnički zadani klijent e-pošte s dodatnim URI-jem za slanje pošte.
  • Pokreće registriranu aplikaciju za otvaranje, uređivanje ili ispis određene datoteke.

The otvoren() metoda klase Desktop pokreće pridruženu aplikaciju za otvaranje datoteke. Kao argument uzima datoteku. Potpis metode je:

 public void open (File file) throws IOException 

Metoda izbacuje sljedeće iznimke:

koji su mjeseci u q3
    NullPointerException:Ako je datoteka nula.IllegalArgumentException:Izbacuje se kada datoteka ne postoji.IOException:Izbacuje se kada ne postoji aplikacija povezana s danom vrstom datoteke.Nepodržano izvršenje operacije:Ako trenutna platforma ne podržava radnju Desktop.Action.Open.

Primjer

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

Kada pokrenemo gornji program, on otvara navedenu tekstualnu datoteku u zadanom uređivaču teksta. Također možemo otvoriti .docx, .pdf i .webp datoteku.

Izlaz:

Kako otvoriti datoteku u Javi

Java FileInputStream klasa

Java FileInputStream klasa se koristi za otvaranje i čitanje datoteke. Datoteku možemo otvoriti i pročitati pomoću konstruktora klase FileInputStream. Potpis konstruktora je:

 public FileInputStream(File file) throws FileNotFoundException 

Prihvaća datoteku kao argument. Baca se FileNotFoundException ako datoteka ne postoji ili je naziv datoteke direktorij.

Primjer

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

Izlaz:

Diana Mary Blacker
Kako otvoriti datoteku u Javi

Klasa Java BufferedReader

Java BufferedReader klasa čita tekst iz ulaznog toka znakova. Pripada a java.io paket. Koristimo konstruktor klase BufferedReader za otvaranje ili čitanje datoteke. Potpis konstruktora je:

 public BufferedReader(Reader in) 

Stvara ulazni tok znakova u međuspremniku koji koristi ulazni međuspremnik zadane veličine. Koristi zadanu veličinu ulaznog međuspremnika.

kako čitati iz csv datoteke u Javi

Primjer

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

Izlaz:

Kako otvoriti datoteku u Javi

Java FileReader klasa

Java FileReader klasa se također koristi za otvaranje i čitanje datoteke. Pripada a java.io paket. To je pogodnost za čitanje znakova datoteka. Koristi se za čitanje neobrađenih bajtova pomoću klase FileInputStream. Za otvaranje i čitanje datoteke koristimo konstruktor klase FileInputStream. Potpis konstruktora je:

 public FileReader(File file) throws FileNotFoundException 

Prihvaća datoteku kao argument. To baca FileNotFoundException ako navedena datoteka ne postoji ili je naziv datoteke direktorij.

Primjer

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

Izlaz:

Kako otvoriti datoteku u Javi

Klasa Java Scanner

Java Skener klasa se također koristi za otvaranje i čitanje datoteke. Klasi Scanner pripada java.util paket. Za otvaranje i čitanje datoteke koristi se konstruktor klase Scanner. Potpis konstruktora je:

 public scanner (File source) throws FileNotFoundException 

Prihvaća datoteku (koju treba skenirati) kao argument. Također baca FileNotFoundException , ako izvor datoteke nije pronađen.

avl stabla

Primjer

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

Izlaz:

Kako otvoriti datoteku u Javi

Java nio paket

metoda readAllLines(). : Metoda readAllLines() je metoda klase File. Čita sve retke iz datoteke, a bajtovi iz datoteke se dekodiraju u znakove pomoću skupa znakova UTF-8. Vraća retke iz datoteke kao popis. Potpis metode je:

 public static List readAllLines(Path path) throws IOException 

Gdje je put put datoteke.

Gornja metoda je ekvivalentna pozivanju sljedećeg:

 File.readAllLines(path, Standard CharSets.UTF_8) 

Collections.emptyList(): Metoda emptyList() je metoda klase Collection koja pripada paketu java.util. Koristi se za dobivanje prazne liste. Potpis metode je:

 public static final List emptyList() 

Primjer

 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 } } 

Izlaz:

Kako otvoriti datoteku u Javi