`
damies
  • 浏览: 238535 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

简单Socket编程,来理解Socket

阅读更多

Server端:

java 代码
  1. package com.sunhill.socket.server;   
  2.   
  3. import java.io.*;   
  4. import java.net.*;   
  5.   
  6. public class tcpserver {   
  7.     public static void main(String[] args) throws IOException {   
  8.         ServerSocket svrsoc = null;   
  9.         Socket soc = null;   
  10.         DataInputStream in = null;   
  11.         PrintStream out = null;   
  12.         InetAddress clientIP = null;   
  13.         String str = null;   
  14.         try {   
  15.             svrsoc = new ServerSocket(8000);   
  16.             System.out.println("Server start....");   
  17.             soc = svrsoc.accept();   
  18.   
  19.             in = new DataInputStream(soc.getInputStream());   
  20.             out = new PrintStream(soc.getOutputStream());   
  21.             clientIP = soc.getInetAddress();   
  22.             System.out.println("Client's IP address:" + clientIP);   
  23.             out.println("welcome.....");   
  24.             str = in.readLine();   
  25.             while (!str.equals("quit")) {   
  26.                 System.out.println("Client said:" + str);   
  27.                 str = in.readLine();   
  28.             }   
  29.             System.out.println("Client want to leave");   
  30.         } catch (Exception e) {   
  31.             System.out.println("error:" + e);   
  32.         } finally {   
  33.             in.close();   
  34.             out.close();   
  35.             soc.close();   
  36.             svrsoc.close();   
  37.             System.exit(0);   
  38.         }   
  39.     }   
  40. }   

Client端:

java 代码
  1. package com.sunhill.socket.client;   
  2.   
  3. import java.io.*;   
  4. import java.net.*;   
  5.   
  6. public class tcpclient {   
  7.     public static void main(String[] args) throws IOException {   
  8.         Socket soc = null;   
  9.         DataInputStream in = null;   
  10.         PrintStream out = null;   
  11.         DataInputStream sysin = null;   
  12.         String strin = null;   
  13.         String strout = null;   
  14.         try {   
  15.             soc = new Socket("localhost"8000);   
  16.             System.out.println("Connecting to the Server");   
  17.             in = new DataInputStream(soc.getInputStream());   
  18.             out = new PrintStream(soc.getOutputStream());   
  19.             strin = in.readLine();   
  20.             System.out.println("Server said:" + strin);   
  21.             sysin = new DataInputStream(System.in);   
  22.             strout = sysin.readLine();   
  23.             while (!strout.equals("quit")) {   
  24.                 out.println(strout);   
  25.                 strout = sysin.readLine();   
  26.             }   
  27.             out.println(strout);   
  28.         } catch (Exception e) {   
  29.             System.out.println("error:" + e);   
  30.         } finally {   
  31.             in.close();   
  32.             out.close();   
  33.             soc.close();   
  34.             sysin.close();   
  35.             System.exit(0);   
  36.         }   
  37.     }   
  38. }   
分享到:
评论

相关推荐

    实验一_SOCKET编程实验

    通过这个实验,你将了解Socket编程的基本流程,并能独立编写简单的TCP通信程序。同时,这也将为你进一步学习高级网络编程打下坚实的基础。 在完成实验后,分析并优化代码,例如,处理并发连接、提高数据传输效率等...

    Socket编程实验报告.docx

    实验目标是掌握Socket编程的基本方法,理解客户端与服务器端的区别,并熟练使用Socket类与ServerSocket类。实验内容包括学习Socket编程涉及的类和接口,尤其是基于TCP的Socket编程,以及编写服务器端和客户端程序,...

    华中科技大学-计算机通信与网络(Socket编程)-内含源文件和说明书.zip

    Socket编程的实验和设计通常包括建立简单的服务器和客户端应用,进行数据传输,以及处理并发连接等。 【压缩包子文件的文件名称列表】:模块一_Socket编程.doc、alex_socket "模块一_Socket编程.doc"可能是一个...

    windows下简单SOCKET编程

    在Windows操作系统环境下进行简单的SOCKET编程,主要是利用Winsock库来实现网络通信。Winsock是Windows Socket接口的简称,它是Microsoft Windows对Berkeley Sockets API的实现,为开发者提供了跨平台的网络通信能力...

    网络编程1Socket编程

    UDP Socket编程相对简单,只需创建Socket,然后就可以直接发送和接收数据包,无需建立和关闭连接。 **Socket编程步骤:** 1. **创建Socket**:使用特定的函数(如在Java中是`Socket`类的构造器,在C++中是`socket()...

    网络socket 编程指南

    这本书籍不仅涵盖了Socket编程的基本概念和技术,还深入到高级主题,对于想要深入了解网络编程的开发者来说,是一份宝贵的参考资料。通过学习,读者能够熟练掌握Socket编程,为构建复杂网络应用打下坚实基础。

    Socket编程例子

    总结,Socket编程是构建网络应用的基础,理解其工作原理和操作步骤对开发者来说至关重要。通过"TestSocket"这个例子,你可以更深入地学习如何在实际项目中运用Socket,从而实现跨网络的高效通信。

    基于TCP/IP的socket编程

    为了实现这一功能,开发人员需要深入理解TCP/IP协议,熟练掌握socket编程接口,并具备处理异常和错误的能力。同时,还需要考虑安全性、性能优化以及资源管理等问题。在实际应用中,这样的设计可能会涉及并发处理,...

    简明Socket编程指南

    这些实验可以帮助读者更好地理解Socket编程的实际应用,并掌握如何在实际项目中运用这些技术。 - **TCP和IP通信程序设计实验**:通过实现简单的客户端与服务器通信来展示如何使用Socket进行网络数据传输。 - **实时...

    华中科技大学计算机学院socket编程实验源代码

    实验中的"socket编程源代码"文件包含了实现这些功能的具体代码,学生可以通过阅读和分析代码来学习如何使用socket API进行网络编程,理解网络通信的流程和细节。"client"和"server"文件则是编译后的可执行程序,可以...

    VC++6.0中socket编程学习教程汇集

    MFC提供了一个封装了Socket功能的类——Csocket,它使得在VC++环境中进行Socket编程变得更加直观和简单。 "TCPIP"是指传输控制协议/因特网协议,它是互联网上最广泛使用的协议族。TCP是一种面向连接的、可靠的、...

    Linux下使用C++进行Socket编程

    利用C++进行Socket编程,可以通过自定义类来封装这些复杂的API函数,使得编程更加方便,同时又不牺牲性能。 首先,Socket是一种进程间通信机制。它允许不同计算机上的进程或同一计算机上的进程之间进行数据交换。一...

    Socket编程概述 ppt

    Socket编程是计算机网络通信中的重要概念,特别是在TCP/IP协议栈中。这个名为“Socket编程概述”的PPT课程可能涵盖了从基础到进阶的Socket编程知识,帮助学习者理解和实现网络应用。下面,我将详细解释Socket编程的...

    Socket编程实例

    总之,这个C#的Socket编程实例展示了如何构建一个简单的聊天应用程序,涉及了Socket的基本操作,包括连接、监听、发送和接收数据。通过理解和实践这个示例,开发者可以深入理解网络编程的基础,并为开发更复杂的网络...

    简单的php —— socket 编程

    对于给定的标签"源码"和"工具",这可能意味着你可能需要查看一些示例代码或者工具来帮助你理解和实践PHP的socket编程。可以参考给定的博文链接(虽然在这个环境下无法直接访问),那里可能会有一些实用的代码片段和...

    C++socket编程实例

    在C++中,我们可以使用`<sys/socket.h>`和`<netinet/in.h>`等头文件来实现socket编程。 TCP(Transmission Control Protocol)是一种面向连接的、可靠的传输协议,通过三次握手建立连接,四次挥手断开连接,确保...

    Socket编程简单例子

    在这个“Socket编程简单例子”中,我们将深入理解如何在Android客户端与服务器之间建立连接,发送消息并接收回应。 首先,我们需要了解Socket的基本原理。Socket是网络通信的一种接口,它为两台机器上的应用程序...

    C语言Socket简单编程指南

    文档中可能包含了如何用C语言编写一个简单的服务器和客户端程序的示例,这些示例通过逐步引导的方式,帮助读者理解并掌握Socket编程。 ### 数据包Sockets、阻塞以及select()多路同步I/O 在Socket编程中,理解...

    实战Linux Socket编程

    通过阅读"实战Linux Socket编程",你将有机会深入理解如何在实际项目中运用这些概念。例如,你可以创建一个简单的TCP服务器,处理多个并发连接,或者编写一个UDP客户端向远程服务器发送数据并接收响应。此外,你还将...

Global site tag (gtag.js) - Google Analytics