java – 第一个网络程序的帮助
发布时间:2020-12-15 04:52:51 所属栏目:Java 来源:网络整理
导读:这是代码. public class testClient {public static void main(String[] args) { testClient abc = new testClient(); abc.go();}public void go() { try { Socket s = new Socket("127.0.0.1",5000); InputStreamReader sr = new InputStreamReader(s.getIn
这是代码.
public class testClient { public static void main(String[] args) { testClient abc = new testClient(); abc.go(); } public void go() { try { Socket s = new Socket("127.0.0.1",5000); InputStreamReader sr = new InputStreamReader(s.getInputStream()); BufferedReader reader = new BufferedReader(sr); String x = reader.readLine(); System.out.println(x); reader.close(); } catch(IOException ex) { ex.printStackTrace(); } } } public class testServer { public static void main(String[] args) { testServer server = new testServer(); server.go(); } public void go() { try { ServerSocket s = new ServerSocket(5000); while(true) { Socket sock = s.accept(); PrintWriter writer = new PrintWriter(sock.getOutputStream()); String toReturn = "No cake for you."; writer.println(toReturn); } } catch(IOException ex) { ex.printStackTrace(); } } } java.io. *和java.net.*都在这两个类中导入. 现在,当我尝试运行这些(使用不同的终端)时,没有任何反应.我究竟做错了什么? 屏幕:http://i29.tinypic.com/250qlmt.jpg 解决方法
使用PrintWriter时,您需要调用flush方法.将您的代码更改为以下,它的工作原理:).
public class testServer { public static void main(String[] args) { testServer server = new testServer(); server.go(); } public void go() { try { ServerSocket s = new ServerSocket(5000); while(true) { Socket sock = s.accept(); PrintWriter writer = new PrintWriter(sock.getOutputStream()); String toReturn = "No cake for you."; writer.println(toReturn); writer.flush(); } } catch(IOException ex) { ex.printStackTrace(); } } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |