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