黑马程序员技术交流社区

标题: 关于使用TCP协议完成一个客户端一个服务器的 [打印本页]

作者: 939676244    时间: 2013-9-23 15:38
标题: 关于使用TCP协议完成一个客户端一个服务器的
本帖最后由 939676244 于 2013-9-24 22:56 编辑

不知道用eclipse怎么玩成呢, 弄了半天还是没效果{:soso_e110:}
作者: 黄文伯    时间: 2013-9-23 18:23
我也很不习惯,然后还是用editplus在cmd中运行,同求!
作者: yting_xmei1129    时间: 2013-9-23 19:41
好吧!看到这个问题饿刚刚在MyEclipse下又写了这个程序,并且在MyEclipse下运行完美通过,下面是源代码

服务器端--->
  1. package com.yting.tcp;

  2. import java.io.DataInputStream;
  3. import java.io.DataOutputStream;
  4. import java.io.IOException;
  5. import java.net.ServerSocket;
  6. import java.net.Socket;

  7. public class TCPServer {

  8.         public static void main(String[] args) throws Exception {
  9.                 ServerSocket ss = new ServerSocket(12349);
  10.                 while (true) {
  11.                         Socket s = ss.accept();
  12.                        
  13.                         //输入流
  14.                         DataInputStream dis = new DataInputStream(s.getInputStream());
  15.                         String readStr = null;
  16.                         if((readStr = dis.readUTF())!=null){
  17.                                 System.out.println(readStr);
  18.                         }
  19.                        
  20.                         //输出流
  21.                         DataOutputStream dos = new DataOutputStream(s.getOutputStream());
  22.                         dos.writeUTF("hello client !!! yting");
  23.                        
  24.                         dis.close();
  25.                         dos.close();
  26.                         s.close();
  27.                 }
  28.         }

  29. }
复制代码
客户端--->
  1. package com.yting.tcp;

  2. import java.io.DataInputStream;
  3. import java.io.DataOutputStream;
  4. import java.net.Socket;

  5. public class TCPClient {

  6.         public static void main(String[] args) throws Exception {
  7.                 Socket s = new Socket("127.0.0.1", 12349);

  8.                 // 输出流
  9.                 DataOutputStream dos = new DataOutputStream(s.getOutputStream());
  10.                 dos.writeUTF("hello server !!! yting");

  11.                 // 输入流
  12.                 DataInputStream dis = new DataInputStream(s.getInputStream());
  13.                 String readStr = null;
  14.                 if((readStr = dis.readUTF()) != null) {
  15.                         System.out.println(readStr);
  16.                 }

  17.                 dos.close();
  18.                 dis.close();
  19.                 s.close();

  20.         }
  21. }
复制代码
下面是控制台的图片--->交你如何切换Console


希望可以帮到楼主、、、如果还有问题可以问饿、、、

The you smile until forever 、、、、、、、、、、、、、、、、、、、、、

作者: 939676244    时间: 2013-9-23 20:55
yting_xmei1129 发表于 2013-9-23 19:41
好吧!看到这个问题饿刚刚在MyEclipse下又写了这个程序,并且在MyEclipse下运行完美通过,下面是源代码

服 ...

{:soso_e127:}

作者: 939676244    时间: 2013-9-23 20:56
939676244 发表于 2013-9-23 20:55

还是没明白怎么切换,你的图好小哦


作者: yting_xmei1129    时间: 2013-9-23 20:57
939676244 发表于 2013-9-23 20:55

怎么了?朋友、、、

作者: 939676244    时间: 2013-9-23 21:01
yting_xmei1129 发表于 2013-9-23 20:57
怎么了?朋友、、、

我的意思是问, 这2个类如何切换啊  用cmd 出现的是2个窗口, eclipse怎么弄 {:soso_e103:}是我没说明白么

作者: yting_xmei1129    时间: 2013-9-23 21:05
939676244 发表于 2013-9-23 21:01
我的意思是问, 这2个类如何切换啊  用cmd 出现的是2个窗口, eclipse怎么弄 是我没说明白 ...

饿下面不是附带了一张图片,那个图片就是切换啊 - - ! 不过饿用的是MyEclipse、、、、、、从TCPServlet类的Console切换到另一个 TCPClient 类的Console 、、、

作者: 939676244    时间: 2013-9-23 21:14
yting_xmei1129 发表于 2013-9-23 21:05
饿下面不是附带了一张图片,那个图片就是切换啊 - - ! 不过饿用的是MyEclipse、、、、、、从TCPServlet ...

{:soso_e110:}图片太小了,ecplise我还是没搞明白 tcp 客户端 和服务器端的怎么玩, 用文本的javac编译的会玩,

作者: 秦兰之    时间: 2013-9-24 22:12
我看懂了,是把两个程序都运行后,在控制台(标蓝色)的图标下,有一个同样的(标黄色)图标,点开向下的三角箭头就有两个选择,点开就好了。

控制台切换的图片位置.PNG (33.93 KB, 下载次数: 117)

控制台切换的图片位置.PNG

作者: yting_xmei1129    时间: 2013-9-24 22:20
939676244 发表于 2013-9-23 21:14
图片太小了,ecplise我还是没搞明白 tcp 客户端 和服务器端的怎么玩, 用文本的javac编译的 ...

本来图片满大的,传上来之后就变小了,这饿也没办法啊、、、、、、、郁闷了!





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2