lesen und schreiben aus Programm

Status
Nicht offen für weitere Antworten.

michaelw

Mitglied
Hallo!

Ich versuche gerade einen JAVA-Wrapper zu schreiben, der sowohl Daten aus einem interaktiven Programm liest und auch Daten in dasselbe Programm schreibt. Das interaktive Program ist in Perl geschrieben und wenn ich es manuell benutze, gibt es keine Probleme. Der relevante Teil meines Java Programms sieht wie folgt aus:

Code:
private OutputStreamWriter outstream;
private BufferedReader instream;

Process process = Runtime.getRuntime().exec("perl " +
"/workspace/trec-qa-2006/ext/WordNetSimilarity/WordNet-Similarity-1.03/utils/similarity.pl " +
"--type=WordNet::Similarity::wup --interact");

outstream = new OutputStreamWriter(process.getOutputStream());
instream = new BufferedReader(new InputStreamReader(process.getInputStream()));
outstream.write("eat\n");
outstream.write("feed\n");
outstream.flush();

String line = null;
while((line=instream.readLine()) != null){
System.out.println("Line: " + line);
}

Das Problem ist, dass das Programm endlos lang läuft, aber nichts ausgibt.
Ich vermute, dass diese Probleme dadurch entstehen, dass das Perl-Programm ein paar
Sekunden zum Laden braucht. Deshalb wollte ich mithilfe von "process.wait()" den Thread für ein paar Sekunden warten lassen, also


Code:
 try {
               process.wait(7000);
         } catch (InterruptedException e1) {
                e1.printStackTrace();
        }

Dadurch bekomme ich aber die folgende Fehlermeldung:

Exception in thread "main" java.lang.IllegalMonitorStateException
at java.lang.Object.wait(Native Method)
at compare.Processor.<init>(Processor.java:50)
at compare.Processor.main(Processor.java:129)

mit der ich nichts anfangen kann. Kann mir jemand sagen, wie ich diesen Fehler beheben kann?
Vielleicht ist die "wait()" Operation ja auch nicht die Lösung für das eigentliche Problem.
Komisch ist nur, dass wenn ich das gleiche Verfahren (ohne wait()) auf ein anderes interaktives Programm
anwende (ich habe es mit dem Ruby-Interpreter "irb" versucht), das Schreiben und Lesen aus dem Programm völlig problemlos funktioniert.


Vielen Dank im Voraus!
 

Kola

Aktives Mitglied
Über:
Code:
try
{
    Thread.sleep(7000); //7 sec warten
}catch(InterruptedException ex)
{
    ex.printStackTrace();
}

wartest du 7 Sekunden.
 

michaelw

Mitglied
Ich habe den Code bei mir eingefügt, aber leider hat es nichts gebracht. Ich habe auch im entsprechenden Perl-Code geprüft, dass der gesamte Output nach STDOUT geschickt wird, aber das war alles so wie es sein sollte.
 

Einwegdose

Aktives Mitglied
Probier mal anstatt

Code:
instream = new BufferedReader(new InputStreamReader(process.getInputStream()));

Code:
instream = new BufferedReader(new InputStreamReader(process.getErrorStream()));

Das hat mir mal geholfen, weil die Ausgabe über den Error-Stream kam..
 

michaelw

Mitglied
Nein, das Programm bricht nicht mehr ab, es läuft endlos weiter und gibt nichts aus, was mich wundert, da doch etwas nach STDOUT geschrieben wird (laut Perl-code).
 

michaelw

Mitglied
Ergänzung zu meinem letzten Eintrag;
Ich habe im Perl Code die "STDERR prints" auf STDOUT umgesetzt, so dass alles, was kommt, in STDOUT geschrieben wird.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
K Probleme beim Programm schreiben - Lesen von Dateiinhalten -zaehlen von Wörtern/ Buchstaben Java Basics - Anfänger-Themen 4
J Dateien lesen und schreiben Java Basics - Anfänger-Themen 5
NeoLexx Datenströme Lesen und Schreiben einer Textdatei Java Basics - Anfänger-Themen 2
J Lesen und schreiben in eine Datei(Anfänger- Dateizugriffe) Java Basics - Anfänger-Themen 3
S JSON Datei schreiben und lesen Java Basics - Anfänger-Themen 3
A JSON Lesen und Schreiben. Java Basics - Anfänger-Themen 3
amazinglife77 Input/Output Lesen/Schreiben Properties: in eclipse geht, als JAR nicht Java Basics - Anfänger-Themen 4
F Input/Output Dateien lesen/schreiben Java Basics - Anfänger-Themen 1
Z Problem beim Lesen und Schreiben einer Datei Java Basics - Anfänger-Themen 10
J Per I/O Streams in LinkedList oder ArrayList schreiben/lesen Java Basics - Anfänger-Themen 6
A XML schreiben - lesen Java Basics - Anfänger-Themen 19
E txt Datei schreiben und lesen Java Basics - Anfänger-Themen 9
H Zeile aus Textdatei lesen und in Textfield schreiben Java Basics - Anfänger-Themen 4
D Textfile lesen/schreiben abhängig vom inhalt Java Basics - Anfänger-Themen 6
S Lesen und Schreiben von Dateien in Java Java Basics - Anfänger-Themen 11
F Unicode beim Lesen und Schreiben per java.io.* Java Basics - Anfänger-Themen 9
A Datei Lesen und Schreiben in gleichen Klasse Java Basics - Anfänger-Themen 3
S Array Daten in Binär Datei schreiben/lesen Java Basics - Anfänger-Themen 11
J Problem mit Datei lesen und schreiben Java Basics - Anfänger-Themen 8
M Datei Lesen Und Schreiben! -.- Java Basics - Anfänger-Themen 7
C Ist gleichzeitiges Lesen und Schreiben einer ArrayList möglich Java Basics - Anfänger-Themen 2
R Daten aus Datenbank lesen, verarbeiten und schreiben. Java Basics - Anfänger-Themen 1
R Sequentielle Datei lesen und schreiben Java Basics - Anfänger-Themen 5
V Performance Lesen und Schreiben aus/in Streams Java Basics - Anfänger-Themen 4
mwildam Textfile lesen und schreiben - so viele Möglichkeiten Java Basics - Anfänger-Themen 5
C lesen und schreiben Java Basics - Anfänger-Themen 24
M Textboxen lesen und schreiben! Java Basics - Anfänger-Themen 3
M Dateien lesen/schreiben und Heap Space Probleme Java Basics - Anfänger-Themen 8
T gezieltes lesen/schreiben in datei Java Basics - Anfänger-Themen 9
H Datei lesen und an bestimmter Stelle schreiben Java Basics - Anfänger-Themen 4
I Bits lesen und schreiben Java Basics - Anfänger-Themen 6
J Datei-Details /-Infos wie Kommentare, Autor lesen/schreiben Java Basics - Anfänger-Themen 2
B Datei lesen und schreiben Java Basics - Anfänger-Themen 2
R Datei erzeugen schreiben und lesen ? Java Basics - Anfänger-Themen 18
S Textdatei lesen und schreiben Java Basics - Anfänger-Themen 2
N Mehrzeilig aus Datein lesen und schreiben Java Basics - Anfänger-Themen 8
M Linked List schreiben und lesen Java Basics - Anfänger-Themen 4
A Hilfe beim Lesen von Pfaden und Systemvariablen Java Basics - Anfänger-Themen 3
I API - zurückgegebener JSON String lesen und in Entity konvertieren Java Basics - Anfänger-Themen 2
Say 2-DIM Array Code lesen und verstehen Java Basics - Anfänger-Themen 5
N Textdatei aus Resourcen-Ordner eines Projekts/ jar-file lesen Java Basics - Anfänger-Themen 4
W Timestamp lesen Java Basics - Anfänger-Themen 6
F MS365 Kalender lesen Java Basics - Anfänger-Themen 5
Robin Gentele XML von Webserver lesen und ausgeben Java Basics - Anfänger-Themen 5
H Scripte oder Programmcode aus Datei lesen? Java Basics - Anfänger-Themen 5
S Zufällige ungerade Zeile aus Text-Datei lesen Java Basics - Anfänger-Themen 5
C Fehlermeldungen lesen Java Basics - Anfänger-Themen 2
S Allgemeine Java Codes lesen und verstehen Java Basics - Anfänger-Themen 7
rafi072001 Lesen aus einem Excel File Java Basics - Anfänger-Themen 10
T Klassen Den Wert aus Array lesen lassen Java Basics - Anfänger-Themen 12
S Java Array Länge aus anderer Klasse lesen Java Basics - Anfänger-Themen 1
G Excle datei aus resources folder finden und lesen Java Basics - Anfänger-Themen 5
J Datei aus Projektfolder lesen Java Basics - Anfänger-Themen 12
H Vererbung Static Scanner Objekt verwenden - von StdIn in einer importierten Klasse lesen Java Basics - Anfänger-Themen 10
S Tastatur input lesen Java Basics - Anfänger-Themen 7
S Mit FileReader lesen, in ArrayList speichern Java Basics - Anfänger-Themen 4
B Aus Datei lesen Java Basics - Anfänger-Themen 23
B Aus Datei lesen Java Basics - Anfänger-Themen 0
deatzi Wert aus anderer Klasse lesen Java Basics - Anfänger-Themen 7
W Wie lasse ich meine Ausgabe nach dem Lesen verschwinden ? Java Basics - Anfänger-Themen 1
S Daten lesen und speichern Java Basics - Anfänger-Themen 26
C Input/Output Datei aus Startverzeichnis lesen Java Basics - Anfänger-Themen 6
G Input/Output Aus txt-Datei lesen, aus Ordner Java Basics - Anfänger-Themen 1
S BufferedReader nächste Zeile lesen Java Basics - Anfänger-Themen 4
sourcecorn Werte aus einem File lesen Java Basics - Anfänger-Themen 6
G Jar-Archiv zum Lesen einer Konfigurationsdatei Java Basics - Anfänger-Themen 9
MaxG. Input/Output Datei lesen Java Basics - Anfänger-Themen 3
Hacer Quellcode lesen Java Basics - Anfänger-Themen 13
H Aus wav-datei lesen und in neue wav-datei speichern Java Basics - Anfänger-Themen 10
N Lesen eines files mit FILES.lines Java Basics - Anfänger-Themen 11
A Private Attribut aus fremder Klasse lesen ? Java Basics - Anfänger-Themen 19
R Ab einer bestimmten Zeile lesen Java Basics - Anfänger-Themen 3
P vokale konsonanten ziffern satzzeichen aus string lesen. hab kiene ahnung Java Basics - Anfänger-Themen 10
A textfeldwerte aus array lesen Java Basics - Anfänger-Themen 27
K Classpath Lesen von Property-File Java Basics - Anfänger-Themen 1
D Methoden Array aus Datei lesen und weitergeben? Java Basics - Anfänger-Themen 7
T 'Nix' aus Textdokument lesen Java Basics - Anfänger-Themen 11
G tga Datei lesen und in eine matrix umwandeln Java Basics - Anfänger-Themen 1
E lesen csv file column by column Java Basics - Anfänger-Themen 10
G Bis zu einem bestimmten Punkt aus Datei lesen Java Basics - Anfänger-Themen 2
K Mit Scanner aus einer txt Datei lesen und jede Person mit name, vorname, geburtsdatum speichern Java Basics - Anfänger-Themen 5
K Dateien lesen | IndexOutOfBoundsException Java Basics - Anfänger-Themen 2
E Input/Output Property-Datei aus einer Zip lesen in in einer anderen Zip-Datei ist Java Basics - Anfänger-Themen 3
B Input/Output Scanner-Probleme bei String-Lesen Java Basics - Anfänger-Themen 3
I Properties oder Umgebungsvariablen mit ${irgendwas} lesen? Java Basics - Anfänger-Themen 2
D Lesen aus Datei (java.util.NoSuchElementException) Java Basics - Anfänger-Themen 22
D Problem beim Lesen einer txt-Datei Java Basics - Anfänger-Themen 8
G Zeile charweise lesen Java Basics - Anfänger-Themen 3
J Aus Datei lesen und ausgeben Java Basics - Anfänger-Themen 4
N Bestimmte Inhalte aus Datei lesen Java Basics - Anfänger-Themen 11
G Datei zeilenweise lesen Java Basics - Anfänger-Themen 19
M Wie sämtliche Schlüssel und Attibutwerte aus einer Propertie Datei lesen? Java Basics - Anfänger-Themen 3
S Compiler-Fehler jOpenDocument Kompelierfehler - ODS Datei lesen Java Basics - Anfänger-Themen 2
C Aus einer Textdatei Zahlen lesen mit Leerzeichen Java Basics - Anfänger-Themen 11
T BufferReader soll datei mehrmals lesen Java Basics - Anfänger-Themen 13
G Leere Zeile lesen Java Basics - Anfänger-Themen 12
F Effizientes Lesen von 65 Datein mit Boolean Werten Java Basics - Anfänger-Themen 6
S Datei aus JAR lesen. Java Basics - Anfänger-Themen 9
G Zeilenweise lesen Java Basics - Anfänger-Themen 17
C Mehrere Tasten beim KeyListener gleichzeitig lesen Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben