logo

Hvordan åpne en fil i Java

Det er følgende måter å åpne en fil i Java:

  • Java Desktop klasse
  • Java FileInputStream-klassen
  • Java BufferedReader-klassen
  • Java FileReader-klassen
  • Java Scanner klasse
  • Java nio-pakke

Java Desktop klasse

Java Desktop-klassen gir en åpen() metode for å åpne en fil. Den tilhører en java.awt pakke. Desktop-implementering er plattformavhengig, så det er nødvendig å sjekke at operativsystemet støtter Desktop eller ikke. Desktop-klassen ser etter en tilknyttet applikasjon registrert på det opprinnelige skrivebordet for å håndtere en fil. Hvis det ikke er noen tilknyttet applikasjon eller applikasjonen ikke kan startes, kaster den FileNotFoundException . Starter brukerens standardnettleser for å vise en spesifisert URI.

  • Starter brukerens standard e-postklient med en valgfri e-post-til-URI.
  • Starter det registrerte programmet for å åpne, redigere eller skrive ut en spesifisert fil.

De åpen() metode for Desktop-klassen starter det tilknyttede programmet for å åpne en fil. Det tar en fil som et argument. Signaturen til metoden er:

 public void open (File file) throws IOException 

Metoden gir følgende unntak:

fjern første tegn i excel
    NullPointerException:Hvis filen er null.UlovligArgumentUnntak:Den kastes når filen ikke eksisterer.IOException:Det kastes når det ikke er noen applikasjon knyttet til den gitte filtypen.UnsupportedOperationExecution:Hvis gjeldende plattform ikke støtter Desktop.Action.Open-handlingen.

Eksempel

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

Når vi kjører programmet ovenfor, åpner det den angitte tekstfilen i standard tekstredigeringsprogram. Vi kan også åpne .docx-, .pdf- og .webp-filene.

Produksjon:

k-nn algoritme
Hvordan åpne en fil i Java

Java FileInputStream-klassen

Java FileInputStream klasse brukes til å åpne og lese en fil. Vi kan åpne og lese en fil ved å bruke konstruktøren til FileInputStream-klassen. Signaturen til konstruktøren er:

 public FileInputStream(File file) throws FileNotFoundException 

Den godtar en fil som et argument. Det kaster FileNotFoundException hvis filen ikke eksisterer eller filnavnet er en katalog.

Eksempel

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

Produksjon:

Hvordan åpne en fil i Java

Java BufferedReader-klassen

Java Bufret Reader klasse leser tekst fra en tegninndatastrøm. Den tilhører en java.io pakke. Vi bruker konstruktøren til BufferedReader-klassen for å åpne eller lese en fil. Signaturen til konstruktøren er:

 public BufferedReader(Reader in) 

Det skaper en bufring av tegninndatastrøm som bruker en inngangsbuffer i standardstørrelse. Den bruker en standard inndatabuffer for størrelse.

Eksempel

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

Produksjon:

Hvordan åpne en fil i Java

Java FileReader-klassen

Java FileReader klasse brukes også til å åpne og lese en fil. Den tilhører en java.io pakke. Det er en bekvemmelighet for å lese tegn i filene. Den brukes til å lese råbyte ved å bruke FileInputStream-klassen. Vi bruker konstruktøren til FileInputStream-klassen for å åpne og lese en fil. Signaturen til konstruktøren er:

 public FileReader(File file) throws FileNotFoundException 

Den godtar en fil som et argument. Den kaster FileNotFoundException hvis den angitte filen ikke eksisterer eller filnavnet er en katalog.

Eksempel

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

Produksjon:

np.random.rand
Hvordan åpne en fil i Java

Java Scanner klasse

Java Skanner klasse brukes også til å åpne og lese en fil. Skanner-klassen tilhører java.util pakke. Konstruktøren av Scanner-klassen brukes til å åpne og lese en fil. Signaturen til konstruktøren er:

til strengmetoden java
 public scanner (File source) throws FileNotFoundException 

Den godtar en fil (som skal skannes) som et argument. Det kaster også FileNotFoundException , hvis kilden til filen ikke finnes.

Eksempel

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

Produksjon:

Hvordan åpne en fil i Java

Java nio-pakke

readAllLines()-metoden : ReadAllLines()-metoden er metoden til File-klassen. Den leser alle linjer fra en fil og byte fra filen dekodes til tegn ved hjelp av UTF-8-tegnsett. Den returnerer linjene fra filen som en liste. Signaturen til metoden er:

 public static List readAllLines(Path path) throws IOException 

Der banen er filbanen.

Metoden ovenfor tilsvarer å påkalle følgende:

 File.readAllLines(path, Standard CharSets.UTF_8) 

Collections.emptyList(): EmptyList()-metoden er metoden til Collection-klassen som tilhører java.util-pakken. Den brukes til å få en tom liste. Signaturen til metoden er:

 public static final List emptyList() 

Eksempel

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

Produksjon:

Hvordan åpne en fil i Java