0
我想要的只是從wunderground打印到控制檯響應插座保持打開狀態:打印的BufferedReader而
public class Weather {
public static void main(String[] args) {
String host = "rainmaker.wunderground.com";
int port = 3000;
int c;
{
try (Socket socket = new Socket(host, port);
PrintWriter printWriter = new PrintWriter(socket.getOutputStream(), true);
final BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in))) {
while (true) {
System.out.println(socket.toString());
c = bufferedReader.read();
System.out.print((char) c);
}
} catch (IOException ex) {
System.out.println(ex + host + port);
System.exit(1);
} finally {
System.exit(1);
}
}
}
}
然而,沒有太多的輸出去:
[email protected]:~/NetBeansProjects/MudSocketClient$
[email protected]:~/NetBeansProjects/MudSocketClient$ java -jar dist/MudSocketClient.jar
Socket[addr=rainmaker.wunderground.com/38.102.137.140,port=3000,localport=53550]
^[email protected]:~/NetBeansProjects/MudSocketClient$
[email protected]:~/NetBeansProjects/MudSocketClient$
從運行Telnet CLI,連接工作正常。
爲了澄清,我想在不關閉套接字的情況下打印輸出。請參閱http://stackoverflow.com/questions/6399557/java-simple-telnet-client-using-sockets – Thufir