中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > Java > 综合文章
java Socket 通讯的代码例子
作者:未知 时间:2005-07-27 22:32 出处:CSDN 责编:chinaitpower
              摘要:java Socket 通讯的代码例子

实现Client端功能的ClientApp.java原文件:

import java.net.*;
import java.io.*;
import java.lang.*;

public class ClientApp
{
  public static void main(String args[])
  {
    try
    {
       //创建通讯并且和主机Rock连接
       Socket cSocket=new Socket("192.168.100.188",8018);
       //打开这个Socket的输入/输出流
       OutputStream os=cSocket.getOutputStream();
       DataInputStream is=new DataInputStream(cSocket.getInputStream());

       int c;
       boolean flag=true;

       String responseline;

       while(flag)
       {
           //从标准输入输出接受字符并且写如系统
           while((c=System.in.read())!=-1)
           {
              os.write((byte)c);
              if(c=='\n')
              {
                 os.flush();
                 //将程序阻塞,直到回答信息被收到后将他们在标准输出上显示出来
                 responseline=is.readLine();
                 System.out.println("Message is:"+responseline);
              }
           }
       }
       os.close();
       is.close();
       cSocket.close();

    }
    catch(Exception e)
    {
      System.out.println("Exception :"+ e.getMessage());
    }
  }
}

实现Server端功能的ServerApp.java原文件:

import java.net.*;
import java.io.*;

public class ServerApp
{
  public static void main(String args[])
  {
     try
     {
        boolean flag=true;
        Socket clientSocket=null;
        String inputLine;
        int c;

        ServerSocket sSocket=new ServerSocket(8018);
        System.out.println("Server listen on:"+sSocket.getLocalPort());

        while(flag)
        {
          clientSocket=sSocket.accept();
          DataInputStream is= new DataInputStream(new BufferedInputStream(clientSocket.getInputStream()));
          OutputStream os=clientSocket.getOutputStream();

          while((inputLine=is.readLine())!=null)
          {
             //当客户端输入stop的时候服务器程序运行终止!
             if(inputLine.equals("stop"))
             {
                flag=false;
                break;
             }
             else
             {
                System.out.println(inputLine);

                while((c=System.in.read())!=-1)
                {
                  os.write((byte)c);
                  if(c=='\n')
                  {
                    os.flush();   //将信息发送到客户端
                    break;
                  }
                }
             }


          }
          is.close();
          os.close();
          clientSocket.close();

        }
        sSocket.close();
     }
     catch(Exception e)
     {
       System.out.println("Exception :"+ e.getMessage());
     }
  }
}


关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有