/* Det här är en enkel klass för att skriva på textfiler. Klassen kan till exempel användas så här: // Öppna filen "data.txt" så att man kan skriva på den. // Om inte filen redan finns så skapas en ny fil. // Om filen redan existerar så raderas det gamla innehållet. SimpleTextFileWriter out = new SimpleTextFileWriter("data.txt"); // Skriv på filen. out.println("Detta är en automatiskt genererad datafil."); out.println("Ändra ingenting!"); // Stäng filen. out.close(); Klassen kan också användas för att skriva på standard output. Då anger man inte något filnamn i konstruktorn och man behöver inte stänga förbindelsen. // Öppna en förbindelse till stdout och skriv ett meddelande. SimpleTextFileWriter stdout = new SimpleTextFileWriter(); stdout.println("Detta är en hälsning från Mars."); Version: 1.1, 990812 Author: snilsson@nada.kth.se Changes: Lagt till stöd för stdout. 990812 */ import java.io.*; class SimpleTextFileWriter { private PrintWriter out; private PrintStream stdout = System.out; private boolean printToStdout = false; // Skapa en förbindelse för att skriva på stdout. public SimpleTextFileWriter() { printToStdout = true; } // Skapa en förbindelse för att skriva på filen filename. public SimpleTextFileWriter(String filename) { try { out = new PrintWriter(new FileWriter(filename)); } catch(IOException e) { e.printStackTrace(); System.exit(0); } } public void print(boolean b) { if (printToStdout) stdout.print(b); else out.print(b); } public void print(char c) { if (printToStdout) stdout.print(c); else out.print(c); } public void print(int i) { if (printToStdout) stdout.print(i); else out.print(i); } public void print(long l) { if (printToStdout) stdout.print(l); else out.print(l); } public void print(float f) { if (printToStdout) stdout.print(f); else out.print(f); } public void print(double d) { if (printToStdout) stdout.print(d); else out.print(d); } public void print(String s) { if (printToStdout) stdout.print(s); else out.print(s); } public void print(Object o) { if (printToStdout) stdout.print(o); else out.print(o); } public void print(char[] s) { if (printToStdout) stdout.print(s); else out.print(s); } public void println() { if (printToStdout) stdout.println(); else out.println(); } public void println(boolean b) { if (printToStdout) stdout.println(b); else out.println(b); } public void println(char c) { if (printToStdout) stdout.println(c); else out.println(c); } public void println(int i) { if (printToStdout) stdout.println(i); else out.println(i); } public void println(long l) { if (printToStdout) stdout.println(l); else out.println(l); } public void println(float f) { if (printToStdout) stdout.println(f); else out.println(f); } public void println(double d) { if (printToStdout) stdout.println(d); else out.println(d); } public void println(String s) { if (printToStdout) stdout.println(s); else out.println(s); } public void println(Object o) { if (printToStdout) stdout.println(o); else out.println(o); } public void println(char[] s) { if (printToStdout) stdout.println(s); else out.println(s); } public void flush() { if (printToStdout) stdout.flush(); else out.flush(); } // Stänger förbindelsen till filen. public void close() { if (!printToStdout) out.close(); } // Test public static void main(String[] args) { // Öppna en förbindelse till stdout och skriv ett meddelande. SimpleTextFileWriter stdout = new SimpleTextFileWriter(); stdout.println("Detta är en hälsning från Mars."); } }