Ja. Es ist jedoch ein bisschen umständlich, da sowohl die Eingabeauforderung für den Anwender als auch das berechnete Ergebnis zur Output-Textdatei geschickt wird.
Hier ist ein Beispiel für die Output-Umlenkung in eine Datei. Beachten Sie, dass der Anwender keine Eingabeaufforderungen sieht, da diese zur Output-Datei geschickt werden:
C:\daten\JavaNotes>java Discount > discount.out 100 20 C:\daten\JavaNotes>type discount.out Geben Sie den Listenpreis in Cent ein: Geben Sie den Discount in Prozent ein: Discountpreis: 80 C:\daten\JavaNotes>
Natürlich bekommt die Output-Datei keines der Zeichen, die der Anwender eingeben hat, da diese an das Programm geschickt werden. Um dieses Problem zu lösen, werden Programme manchmal so geschrieben, dass sie den gesamten Input des Anwenders als Echo ausgeben:
import java.io.*; class Discount { public static void main ( String[] args ) throws IOException { int listenpreis; int rabatt; int discountpreis; String zeile; BufferedReader stdin = new BufferedReader( new InputStreamReader( System.in ) ); System.out.println("Geben Sie den Listenpreis in Cent ein:"); zeile = stdin.readLine(); listenpreis = Integer.parseInt( zeile ); System.out.println("Listenpreis: " + zeile ); // Echo Input System.out.println("Geben Sie den Discount in Prozent ein:"); zeile = stdin.readLine(); rabatt = Integer.parseInt( zeile ); System.out.println("Discount: " + zeile ); // Echo Input discountpreis = listenpreis - (listenpreis*rabatt)/100 ; System.out.println( "Discountpreis: " + discountpreis ); } }