黑马程序员技术交流社区

标题: 求大神帮忙看下这个TCP通信的错误 [打印本页]

作者: 再見螢火蟲    时间: 2015-3-8 14:23
标题: 求大神帮忙看下这个TCP通信的错误
本帖最后由 再見螢火蟲 于 2015-3-16 17:42 编辑
  1. public class TcpClientFile {
  2.         public static void method_1(){
  3.                 try {
  4.                         Socket s=new Socket("127.0.0.1",10006);
  5.                         //获取socket流。
  6.                         InputStream is=s.getInputStream();
  7.                         OutputStream os=s.getOutputStream();
  8.                         //定义输入流。源为硬盘文件。
  9.                         BufferedReader br=new BufferedReader(new FileReader("E:\\IO\\1.txt"));
  10.                         PrintWriter pw=new PrintWriter(os,true);
  11.                         String line=null;
  12.                         while((line=br.readLine())!=null){
  13.                                 pw.println(line);
  14.                         }
  15.                         pw.println("over");
  16.                         BufferedReader brs=new BufferedReader(new InputStreamReader(is));
  17.                         String str=brs.readLine();
  18.                         System.err.println(str);
  19.                         br.close();
  20.                         s.close();
  21.                 } catch (IOException e) {
  22.                         e.printStackTrace();
  23.                 }
  24.         }
  25.         public static void mian(String[] args){
  26.                 method_1();
  27.         }
  28. }
复制代码

  1. public class TcpServerFile {
  2.         public static void method_1(){
  3.         try {
  4.                 ServerSocket ss=new ServerSocket(10006);
  5.                 Socket s=ss.accept();
  6.                 //获取客户端的流对象。
  7.                 InputStream is=s.getInputStream();
  8.                 OutputStream os=s.getOutputStream();
  9.                 String str=s.getInetAddress().getHostAddress();
  10.                 System.err.println(str);
  11.                 //装饰对象,并写到文件中。
  12.                 BufferedReader br=new BufferedReader(new InputStreamReader(is));
  13.                 //定义输出流,目的是硬盘文件。
  14.                 PrintWriter pw=new PrintWriter(new FileWriter("E:\\IO\\Server_文章摘抄1.txt"),true);
  15.                 String line=null;
  16.                 while((line=br.readLine())!=null){
  17.                         if("over".equals(line))
  18.                                 break;
  19.                         pw.println(line);
  20.                 }
  21.                 PrintWriter pwc=new PrintWriter(os);
  22.                 pwc.println("上传成功");
  23.                 pw.close();
  24.                 s.close();
  25.                 ss.close();
  26.         } catch (IOException e) {
  27.                 e.printStackTrace();
  28.         }
  29.         }
  30.         public static void main(String[] args){
  31.         method_1();
  32.         }
  33. }
复制代码


这两个为什么单独启动不报端口占用,而只要再启动另一个就报错呢  ,看了半天也没看出什么原因,求解啊
作者: oyy123    时间: 2015-3-8 18:58
程序中TcpClientFile类中的main函数写错了,没有main函数每次运行的都是TcpServerFile中的main函数。你仔细看错误提示。

QQ截图20150308185541.png (3.9 KB, 下载次数: 22)

QQ截图20150308185541.png

QQ截图20150308185747.png (10.64 KB, 下载次数: 21)

QQ截图20150308185747.png

作者: 再見螢火蟲    时间: 2015-3-9 12:57
oyy123 发表于 2015-3-8 18:58
程序中TcpClientFile类中的main函数写错了,没有main函数每次运行的都是TcpServerFile中的main函数。你仔细 ...

谢谢啊 哥们




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