`

Socket网络编程

阅读更多

客户端程序

  import java.io.*;

  import java.net.*;

  public class TalkClient {

    public static void main(String args[]) {

      try{

        Socket socket=newSocket("127.0.0.1",4700);

        //向本机的4700端口发出客户请求BufferedReader sin=new BufferedReader(newInputStreamReader(System.in));

        //由系统标准输入设备构造BufferedReader对象 PrintWriter os=new PrintWriter(socket.getOutputStream());

        //由Socket对象得到输出流,并构造PrintWriter对象

        BufferedReader is=new BufferedReader(newInputStreamReader(socket.getInputStream()));

        //由Socket对象得到输入流,并构造相应的BufferedReader对象

        String readline;

        readline=sin.readLine(); //从系统标准输入读入一字符串

        while(!readline.equals("bye")){

        //若从标准输入读入的字符串为"bye"则停止循环

          os.println(readline);

          //将从系统标准输入读入的字符串输出到Server

          os.flush();

          //刷新输出流,使Server马上收到该字符串

          System.out.println("Client:"+readline);

          //在系统标准输出上打印读入的字符串

          System.out.println("Server:"+is.readLine());

          //从Server读入一字符串,并打印到标准输出上

          readline=sin.readLine(); //从系统标准输入读入一字符串

        } //继续循环

        os.close(); //关闭Socket输出流

        is.close(); //关闭Socket输入流

        socket.close(); //关闭Socket

      }catch(Exception e) {

        System.out.println("Error"+e); //出错,则打印出错信息

      }

  }

}

 2. 服务器端程序

  import java.io.*;

  import java.net.*;

  import java.applet.Applet;

  public class TalkServer{

    public static void main(String args[]) {

      try{

        ServerSocket server=null;

        try{

          server=new ServerSocket(4700);

        //创建一个ServerSocket在端口4700监听客户请求

        }catch(Exception e) {

          System.out.println("can not listento:"+e);

        //出错,打印出错信息

        }

        Socket socket=null;

        try{

          socket=server.accept();

          //使用accept()阻塞等待客户请求,有客户

          //请求到来则产生一个Socket对象,并继续执行

        }catch(Exception e) {

          System.out.println("Error."+e);

          //出错,打印出错信息

        }

        String line;BufferedReader is=new BufferedReader(newInputStreamReader(socket.getInputStream()));

   //由Socket对象得到输入流,并构造相应的BufferedReader对象

PrintWriter os=newPrintWriter(socket.getOutputStream());

//由Socket对象得到输出流,并构造PrintWriter对象

BufferedReader sin=new BufferedReader(new InputStreamReader(System.in));

         //由系统标准输入设备构造BufferedReader对象

        System.out.println("Client:"+is.readLine());

        //在标准输出上打印从客户端读入的字符串

        line=sin.readLine();

        //从标准输入读入一字符串

        while(!line.equals("bye")){

        //如果该字符串为 "bye",则停止循环

          os.println(line);

          //向客户端输出该字符串

          os.flush();

          //刷新输出流,使Client马上收到该字符串

          System.out.println("Server:"+line);

          //在系统标准输出上打印读入的字符串

          System.out.println("Client:"+is.readLine());

          //从Client读入一字符串,并打印到标准输出上

          line=sin.readLine();

          //从系统标准输入读入一字符串

        }  //继续循环

        os.close(); //关闭Socket输出流

        is.close(); //关闭Socket输入流

        socket.close(); //关闭Socket

        server.close(); //关闭ServerSocket

      }catch(Exception e){

        System.out.println("Error:"+e);

        //出错,打印出错信息

      }

    }

  }

分享到:
评论

相关推荐

    MFC socket网络编程

    本知识点将详细解析如何使用MFC进行Socket网络编程,以创建一个服务器/客户端应用程序。 ### MFC Socket网络编程要点 #### 1. Socket在网络通信中的角色 在计算机网络通信中,Socket被设计为一个网络通信的端点,...

    socket网络编程

    ### Socket网络编程知识点详解 #### 一、Socket网络编程概述 **Socket编程**是指通过使用Socket接口进行网络通信的一种编程方式。它广泛应用于各种网络应用程序的设计与开发之中,特别是那些需要进行远程通信的...

    WindowsSocket网络编程.pdf

    Windows Socket 网络编程 Windows Socket 网络编程是指在Windows操作系统中使用Socket API进行网络编程的技术。Socket是一种标准的网络编程接口,允许不同的操作系统和网络协议进行通信。 一、 客户机/服务器模式...

    python socket 网络编程

    在"python socket 网络编程"这个主题中,我们将深入探讨如何利用socket进行文件传输、命令行执行等核心功能。 一、Python Socket基础 Python中的socket模块源于C语言的socket接口,它提供了TCP/IP协议族的网络通信...

    Socket网络编程进阶与实战系统掌握Socket核心技术

    Socket网络编程进阶与实战系统掌握Socket核心技术,本课程将理论结合实践,带你从零开始,系统学习Socket编程技术,让Socket的学习不再那么零散与难以掌握,同时会提炼出Socket网络传输的核心思想与构架,并带你踩坑...

    Socket网络编程1

    Socket网络编程是计算机科学中一个重要的领域,主要涉及在不同设备间通过网络进行通信的技术。在本主题中,我们将深入探讨Socket的基本概念、工作原理以及如何在实际项目中应用。 首先,我们来看“网络编程概述”。...

    C++ Socket网络编程大全

    《C++ Socket网络编程大全》是一本专注于C++语言实现Socket网络编程的资源集合,它包含了大量的代码片段和实用示例,旨在帮助开发者理解和掌握网络通信的核心技术。Socket编程是计算机网络中的重要组成部分,它提供...

    JAVA Socket 网络编程教程

    Java Socket网络编程是Java开发中一个重要的组成部分,它允许应用程序通过网络进行通信,实现客户端与服务器之间的数据交换。本教程将深入探讨Java Socket编程的基本概念、原理和实践应用。 一、Socket基本概念 ...

    精通windows socket网络编程VC++

    本资源"精通windows socket网络编程VC++"显然是一份专注于利用VC++进行Winsock网络编程的学习资料,包含光盘代码内容,旨在帮助开发者深入理解和实践这一技术。 Windows Socket API为开发者提供了在Windows平台上...

    Socket 网络编程例子程序

    Socket网络编程是计算机科学中的一个重要领域,特别是在分布式系统和互联网应用程序中。本示例程序是为C++ Builder开发者提供的一种学习资源,旨在帮助他们理解和掌握Socket编程的基本概念和技巧。 Socket,也称为...

    c# Socket网络编程实例

    Socket网络编程是计算机通信领域中的核心技术之一,尤其在C#编程环境下,Socket提供了一种标准的方式来实现客户端和服务器之间的通信。本实例主要关注C#语言下的Socket网络编程,特别是客户端的实现,它允许应用程序...

    Socket网络编程3

    Socket网络编程是计算机网络通信的核心技术之一,尤其在开发分布式应用和互联网服务时不可或缺。"Socket网络编程3"这个主题通常会深入讲解如何利用Socket进行TCP协议的客户端和服务器端编程,实现类似QQ聊天这样的...

    socket网络编程教程

    本文所介绍的socket网络编程是指使用套接字接口进行的网络通信编程,它是网络编程中应用最广泛的一种形式。在了解socket网络编程之前,我们需要掌握一些基础知识,例如主机字节序与网络字节序的概念及它们之间的转换...

    Socket网络编程2

    Socket网络编程是计算机通信领域中的基础技术,它允许应用程序通过网络进行数据传输。在这个主题下,我们将深入探讨UDP和TCP两种主要的传输协议在Socket编程中的应用。 首先,我们来看"第三节(UDP客户端代码实现)...

    实用socket网络编程教程

    实用socket网络编程教程实用socket网络编程教程实用socket网络编程教程实用socket网络编程教程

    Java socket网络编程的基础示例

    Java Socket网络编程是Java平台中实现网络通信的核心技术,它基于传输层协议TCP和UDP,为应用程序提供了低级别的、原始的比特流服务。本基础示例将深入探讨这两种协议下的Socket编程。 首先,TCP(Transmission ...

    socket网络编程(源代码)

    Socket网络编程是计算机科学中用于实现网络通信的一种接口,它允许程序通过Internet协议进行数据交换。在本资源中,"socket网络编程(源代码)"提供了实现这一功能的具体示例,便于开发者理解和学习如何创建自己的...

    Socket网络编程-文件上传

    Socket网络编程-文件上传Socket网络编程-文件上传Socket网络编程-文件上传Socket网络编程-文件上传Socket网络编程-文件上传Socket网络编程-文件上传Socket网络编程-文件上传Socket网络编程-文件上传Socket网络编程-...

    socket网络编程--有详细的描述及源代码演示

    本资源包提供了一套全面的教程,旨在帮助初学者深入理解和掌握Socket网络编程,包括理论基础和实践示例。 首先,"socket编程详解.txt"可能会涵盖以下几个方面: 1. **Socket概念**:Socket,即套接字,是网络通信...

Global site tag (gtag.js) - Google Analytics