Ausgabe eines Programm als Stream auffangen
.sea.monkey.
- java
1 Slyh
Guten Abend alle miteinander,
folgendes: ich habe ein Programm (nur kompiliert vorliegend) das ich über das Terminal (ich hab OSX) starten kann...dieses läuft dann in einem endlosloop und erzeugt dabei dauerhaft in einem festgelegten Intervall eine ausgabe von 3 Werten auf das Terminal.
Das Programm wird dazu im Terminal mit zahlreichen Parametern aufgerufen.
Mein Interesse liegt nur im Capturen dieser Werte (deren Ausgabe) durch Java. Ich bin mir nur grade unsicher welche Klasse dafür in Frage kommt. Ein Bufferedreader kann es ja nicht sein...ich bräuchte ja irgendwas dem ich den exakten Aufruf (inklusive aller Parameter mitgeben kann und der mir danach die laufend generierten Werte auf einen Steam piped...
weiß da jemand einen Ansatz?
schönen Gruß
.sea.monkey.
Hallo,
Mein Interesse liegt nur im Capturen dieser Werte (deren Ausgabe) durch Java.
Und du willst das Programm auch durch ein Java-Programm aufrufen, ja?
Anders geht das nämlich ohne weiteres nicht.
Ich bin mir nur grade unsicher welche Klasse dafür in Frage kommt.
Ein Bufferedreader kann es ja nicht sein...ich bräuchte ja irgendwas
dem ich den exakten Aufruf (inklusive aller Parameter mitgeben kann
und der mir danach die laufend generierten Werte auf einen Steam piped...
Ich verstehe nicht genau was du meinst.
Kennst du die Klasse java.lang.Process schon und deren Methode
getInputStream()? Damit solltest du das ganze hinkriegen. In welche
Art von Reader/Stream du dann den Stream wrappst, bleibt dir
überlassen. Wenn die Typen der Ausgabe irgenwdie definiert sind, würde
sich ggf. ein ObjectInputStream anbieten.
Oder habe ich dich jetzt ganz falsch verstanden?
Gruß
Slyh