<div class="iteye-blog-content-contain" style="font-size: 14px">
实现简单的互相发信息
/*
* 客户端
*/
public class Client
{
private static final int PORT = 8089;
private static final String HOST = "127.0.0.1";
public static void main(String[] args){
System.out.println("客户端启动…");
System.out.println("当接收到服务器端字符为 \"END\" 的时候, 客户端将终止\n");
while(true){
Socket socket = null;
try
{
socket = new Socket(HOST,PORT);
//向服务器发送信息
BufferedReader input = new BufferedReader(new InputStreamReader(socket.getInputStream()));
//接受服务器反馈信息
PrintWriter out = new PrintWriter(socket.getOutputStream());
//获取控制台输入的信息
System.out.print("请输入: \t");
String str = new BufferedReader(new InputStreamReader(System.in)).readLine();
out.println(str);
out.flush();
String read = input.readLine();
System.out.println("from Servcer: "+read);
if("END".equals(read)){
System.out.println("客户端关闭连接……");
Thread.sleep(500);
break;
}
input.close();
out.close();
} catch (Exception e)
{
System.out.println("客户端异常:" + e.getMessage());
}finally{
if(null != socket){
try
{
socket.close();
} catch (IOException e)
{
System.out.println("客户端 finally 异常:" + e.getMessage());
}
}
}
}
}
}
/*
* 服务端
*/
public class Server
{
public static final int PORT = 8089;
public static void main(String[] args)
{
System.out.println("服务器启动…\n");
ServerCode server = new ServerCode();
server.init();
}
@SuppressWarnings("resource")
public void init(){
try
{
ServerSocket serverSocket = new ServerSocket(PORT);
while(true){
Socket socket = serverSocket.accept();
try
{
// 读取客户端数据
BufferedReader input = new BufferedReader(new InputStreamReader(socket.getInputStream()));
String read = input.readLine();
System.out.println("from Client:"+read);
//向客户端发送信息
PrintWriter out = new PrintWriter(socket.getOutputStream());
String str = new BufferedReader(new InputStreamReader(System.in)).readLine();
out.println(str);
out.flush();
out.close();
input.close();
} catch (IOException e)
{
System.out.println("服务器 run 异常: " + e.getMessage());
}finally{
if(null!=socket){
try
{
socket.close();
} catch (IOException e)
{
socket = null;
System.out.println("服务端 finally 异常:" + e.getMessage());
}
}
}
}
} catch (IOException e)
{
System.out.println("服务器异常: " + e.getMessage());
}
}
}
</div>
分享到:
相关推荐
在这个“Socket编程简单例子”中,我们将深入理解如何在Android客户端与服务器之间建立连接,发送消息并接收回应。 首先,我们需要了解Socket的基本原理。Socket是网络通信的一种接口,它为两台机器上的应用程序...
UDP Socket编程相比TCP更简单,因为它不需要建立和维护连接。客户端和服务器都使用`socket()`创建Socket,然后通过`sendto()`和`recvfrom()`函数直接发送和接收数据。由于UDP是无连接的,所以无需`connect()`、`bind...
在Linux操作系统中,Socket编程是实现网络通信的基础。Socket接口提供了丰富的函数,使得开发者能够创建、连接...这个简单的实例为学习和理解Linux Socket编程提供了一个基础起点,有助于深入理解网络通信的底层机制。
这个简单的Java Socket编程实例展示了如何使用Java的网络API来实现客户端和服务器之间的通信。在实际应用中,可能会涉及到更复杂的逻辑,如解析HTTP请求,处理多线程并发连接,以及数据的编码和解码等。在压缩包文件...
总之,这个C#的Socket编程实例展示了如何构建一个简单的聊天应用程序,涉及了Socket的基本操作,包括连接、监听、发送和接收数据。通过理解和实践这个示例,开发者可以深入理解网络编程的基础,并为开发更复杂的网络...
Socket,编程实例Socket,编程实例Socket,编程实例Socket,编程实例Socket,编程实例Socket,编程实例Socket,编程实例Socket,编程实例Socket,编程实例Socket,编程实例Socket,编程实例Socket,编程实例Socket,...
总之,C++ Socket编程实例为我们展示了如何在C++中建立网络通信,它包括了服务器的监听、连接处理和数据交换,以及客户端的连接、数据发送和接收。通过学习和实践这些基本概念,开发者可以创建自己的网络应用,如...
这是小例子是我自学Socket编程的时候写的,没有太大的扩展性,因为里面用的分隔符我一直没有想到太好的,所以用,号分割了,聊天的时候不能发,号 要么会出错,大家可以下载之后自己改,我觉得还算能用!很久没有发表...
在IT领域,网络通信是不可或缺的一部分,而C++作为强大的编程语言,提供了丰富的库支持进行网络编程,其中就包括了socket编程。本篇将详细探讨C++中的socket编程,主要聚焦于TCP和UDP两种传输协议的实现。 首先,...
C语言socket编程指南(讲解+实例)
本文将深入探讨C#中的Socket编程,并通过一个简单的实例帮助初学者理解其核心概念。 首先,Socket可以看作是两台计算机之间进行通信的端点,它提供了在不同网络环境下数据传输的标准接口。在C#中,我们可以使用...
android socket编程实例
本资料集包含了Socket编程的一些经典实例源码,旨在帮助开发者深入理解和应用Socket编程技术。 Socket起源于Unix系统,后来被广泛应用于各种操作系统中。在TCP/IP协议栈中,Socket接口作为应用层与传输层之间的接口...
在Android平台上进行网络通信时,Socket编程是一种常见...总之,Android Socket编程实例涵盖了网络通信的基础知识,包括建立连接、传输数据和管理连接等。理解并掌握这些知识,将有助于你构建功能完善的网络通信应用。
在本文中,我们将深入探讨C# Socket编程的经典实例及其源码,旨在帮助你理解和掌握网络通信的核心概念。 首先,让我们了解Socket的基本概念。Socket是网络层面上的一种接口,它为应用程序提供了一种在不同计算机...
在"20_Socket高级编程实例.wmv"这个视频教程中,可能会详细展示这些步骤,并给出实际代码示例,帮助初学者更好地理解和应用Socket编程。可能涵盖的主题包括多线程处理多个客户端连接、异步I/O模型(如epoll)、错误...
Socket编程的实验和设计通常包括建立简单的服务器和客户端应用,进行数据传输,以及处理并发连接等。 【压缩包子文件的文件名称列表】:模块一_Socket编程.doc、alex_socket "模块一_Socket编程.doc"可能是一个...
在`Socket编程例子_MFC`这个压缩包中,可能包含了一个简单的C/S程序示例,展示了如何在MFC工程中集成Socket通信。可能包含客户端的`.cpp`和`.h`文件,以及服务器端的相应文件。代码中可能使用了`CSocket`类及其派生...
本篇将深入探讨C# Socket编程实例,特别是通过“飞鸽传书”这个案例,我们将会学习如何使用C#构建一个简单的文件传输应用。 首先,让我们了解Socket的基本概念。Socket是操作系统提供的接口,用于在两台计算机之间...