Java:
import java.util.regex.*;
import java.util.Scanner;
import java.io.*;
class Test{
public static void main(String[] args){
String inp = "";
try{
String line="";
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
boolean isTerminated = false;
Pattern p = Pattern.compile("FINIS");
while(! isTerminated && (line = br.readLine()) != null){
//So lange boolean isTerminated == false und line nicht null ist, soll er mir den Input lesen und an den String inp dranhängen.
inp += line;
if(p.matcher(line).matches()){
isTerminated = true;
}}
br.close();}catch(IOException e){ e.printStackTrace(); }
System.out.println(inp);
//inp soll nun genau den Text enthalten, den ich in die Kommandozeile schreibe ODER über input redirect übergebe.
}
}
Ich habe eine Datei look.txt, deren Inhalt ein simpler Text ist:
Ich schreibe mal ich und ab rein! Gebt acht - Acht sollt ihr geben.
Wenn ich nun die Datei Test.java kompliliere und dann
eingebe, dann druckt er mir den Text der Datei look.txt, die ich als Input gab, aus. Wenn ich nun aberjava Test < look.txt
java Test Hier steht ein Text, den er mir drucken soll <Enter> FINIS
mache, dann druckt er mir gar nichts, außer "FINIS". Hat jemand von Euch einen Tipp, wie sich das Problem beheben lässt?
Zuletzt bearbeitet: