Jak otworzyć plik w Javie

Jak otworzyć plik w Javie

Istnieją następujące sposoby otwierania pliku w Javie:

  • Klasa pulpitu Java
  • Klasa Java FileInputStream
  • Klasa Java BufferedReader
  • Klasa Java FileReader
  • Klasa skanera Java
  • Pakiet Java nio

Klasa pulpitu Java

Klasa Java Desktop zapewnia otwarty() metoda otwierania pliku. Należy do A Java.awt pakiet. Implementacja komputerów stacjonarnych zależy od platformy, dlatego konieczne jest sprawdzenie, czy system operacyjny obsługuje komputer stacjonarny, czy nie. Klasa Desktop szuka powiązanej aplikacji zarejestrowanej na natywnym pulpicie w celu obsługi pliku. Jeśli nie ma powiązanej aplikacji lub aplikacja nie zostanie uruchomiona, zostanie wyświetlony komunikat Wyjątek FileNotFoundException . Uruchamia domyślną przeglądarkę użytkownika, aby wyświetlić określony identyfikator URI.

  • Uruchamia domyślnego klienta poczty użytkownika z opcjonalnym identyfikatorem URI poczty do.
  • Uruchamia zarejestrowaną aplikację w celu otwarcia, edycji lub wydrukowania określonego pliku.

The otwarty() Metoda klasy Desktop uruchamia powiązaną aplikację w celu otwarcia pliku. Jako argument przyjmuje plik. Sygnatura metody to:

 public void open (File file) throws IOException  

Metoda zgłasza następujące wyjątki:

    Wyjątek NullPointer: Jeśli plik ma wartość null. Wyjątek IllegalArgument: Jest zgłaszany, gdy plik nie istnieje. Wyjątek IO: Jest zgłaszany, gdy z danym typem pliku nie jest powiązana żadna aplikacja. Nieobsługiwane wykonanie operacji: Jeśli bieżąca platforma nie obsługuje akcji Desktop.Action.Open.

Przykład

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

Kiedy uruchomimy powyższy program, otworzy on określony plik tekstowy w domyślnym edytorze tekstu. Możemy także otworzyć plik .docx, .pdf i .webp.

Wyjście:

Jak otworzyć plik w Javie

Klasa Java FileInputStream

Jawa Strumień wejściowy pliku klasa służy do otwierania i odczytywania pliku. Plik możemy otworzyć i odczytać korzystając z konstruktora klasy FileInputStream. Podpis konstruktora to:

 public FileInputStream(File file) throws FileNotFoundException  

Akceptuje plik jako argument. Rzuca Wyjątek FileNotFoundException jeśli plik nie istnieje lub nazwa pliku to katalog.

Przykład

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

Wyjście:

Jak otworzyć plik w Javie

Klasa Java BufferedReader

Jawa Buforowany czytnik klasa odczytuje tekst ze strumienia wejściowego znaków. Należy do A Java.io pakiet. Do otwarcia lub odczytu pliku używamy konstruktora klasy BufferedReader. Podpis konstruktora to:

 public BufferedReader(Reader in)  

Tworzy buforujący strumień wejściowy znaków, który wykorzystuje bufor wejściowy o domyślnym rozmiarze. Używa bufora wejściowego o domyślnym rozmiarze.

Przykład

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

Wyjście:

Jak otworzyć plik w Javie

Klasa Java FileReader

Jawa Czytnik plików class służy również do otwierania i odczytywania pliku. Należy do A Java.io pakiet. Jest to wygoda w odczytywaniu znaków plików. Służy do odczytywania nieprzetworzonych bajtów przy użyciu klasy FileInputStream. Do otwierania i odczytywania pliku używamy konstruktora klasy FileInputStream. Podpis konstruktora to:

 public FileReader(File file) throws FileNotFoundException  

Akceptuje plik jako argument. Rzuca Wyjątek FileNotFoundException jeśli określony plik nie istnieje lub nazwa pliku to katalog.

Przykład

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

Wyjście:

Jak otworzyć plik w Javie

Klasa skanera Java

Jawa Skaner class służy również do otwierania i odczytywania pliku. Klasa Scanner należy do Java.util pakiet. Konstruktor klasy Scanner służy do otwierania i odczytywania pliku. Podpis konstruktora to:

 public scanner (File source) throws FileNotFoundException  

Akceptuje plik (do przeskanowania) jako argument. Również rzuca Wyjątek FileNotFoundException , jeśli nie odnaleziono źródła pliku.

Przykład

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

Wyjście:

Jak otworzyć plik w Javie

Pakiet Java Nio

metoda readAllLines(). : Metoda readAllLines() jest metodą klasy File. Odczytuje wszystkie linie z pliku, a bajty z pliku są dekodowane na znaki przy użyciu zestawu znaków UTF-8. Zwraca linie z pliku w postaci listy. Sygnatura metody to:

 public static List readAllLines(Path path) throws IOException  

Gdzie ścieżka jest ścieżką do pliku.

Powyższa metoda jest równoznaczna z wywołaniem następującej metody:

 File.readAllLines(path, Standard CharSets.UTF_8)  

Kolekcje.emptyList(): Metoda pustyList() jest metodą klasy Collection należącej do pakietu java.util. Służy do uzyskania pustej listy. Sygnatura metody to:

 public static final List emptyList()  

Przykład

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

Wyjście:

Jak otworzyć plik w Javie