Lesing fra fil
For å lese fra en fil, kan du instansiere et FileReader-objekt og gi det til en Scanner:
...
Se java.util.Scanner for hvordan man bruker Scanneren du får.
Skriving til fil
For å lese fra en fil, kan du instansiere en java.io.PrintWriter:
...
Når du vil si deg ferdig med å skrive til filen, har PrintWriter en close()-metode som fullfører eventuell utsatt skriving og lukker filen.
Filnavn
Filnavnet/stien vil være relativt til 'parrent working directory', som i Eclipse er mappen til prosjektet som main-metoden ligger i (med mindre du har satt det til noe annet). Dette vil si at hvis Eclipse sitt workspace ligger i hjemmemappen din og heter 'workspace', og du jobber i prosjektet 'TDT4100', og du sier new PrintWriter("hei.txt")
, vil denne filen dukke opp i mappen TDT4100 i workspace i hjemmemappen din.
...
OS | Eksempel |
---|---|
Windows | C:\Users\blabla\test.txt |
OS X, Linux, ol. | /User/blabla/test.txt |
Eksempler
Lese fra fil:
Code Block |
---|
import java.io.FileNotFoundException; import java.io.FileReader; import java.util.Scanner; class ReadingAFile { public static void main(String[] args) { Scanner in; try { in = new Scanner(new FileReader("test.txt")); while(in.hasNext()){ String line = in.nextLine(); System.out.println(line); } in.close(); } catch (FileNotFoundException e) { System.err.println("Error: file 'test.txt' could not be opened. Does it exist?"); System.exit(1); } } } |
Skrive til fil:
Code Block |
---|
import java.io.FileNotFoundException; import java.io.PrintWriter; class WritingAFile { public static void main(String[] args) { try { PrintWriter outFile = new PrintWriter("test.txt"); outFile.println("hello world!"); outFile.close(); } catch (FileNotFoundException e) { System.err.println("Error: file 'test.txt' could not be opened for writing."); System.exit(1); } } } |