Den Tue, 23 Mar 2004 09:38:05 +0100. skrev sune AD molgaard.org:
> Hejsa.
>
> Jeg prøver at lave et interfave til GnuChess, som har en engine-mode.
>
> Jeg kan køre gnuchess med
>
> Process p = Runtime.getRuntime.exec("gnuchess -x");
>
> men så hører heldet også op. Jeg har leget som en vanvittig med
> p.getInputStream, p.getErrorStream og getOutputStream, men det virker ikke.
>
> Jeg får ikke fejl, hvis jeg skriver til OutputStream'en, men jeg kan
> ikke læse fra InputStream'en. stdInput.ready() returnerer hele tiden
> false...
>
> Any ideas?
>
> Med venlig hilsen,
>
> Sune Mølgaard
Følgende kode virker NÅR GNUCHESS KØRES UDEN -X, så hvor meget gavn du
har af det ved jeg ikke, men jeg var i lege humør her til aften
import java.io.*;
public class Gnu {
public static void main(String[] argv) {
char buf;
try {
Process p = Runtime.getRuntime().exec("/usr/games/gnuchess");
InputStream ip = p.getInputStream();
InputStreamReader ipr = new InputStreamReader(ip);
while (!ipr.ready()) {
System.out.println("not ready");
}
while ((buf = (char)ipr.read()) != (-1)) {
System.out.println(buf); }
} catch (IOException e) {}
}
}