`
kidiaoer
  • 浏览: 822399 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

一个完整的Socket例子

阅读更多
一个完整的Socket例子

以下程序在Jbuilder4下调试成功![下载源程序]
服务端的程序:
import java.io.*;
import java.net.*;

public class SocketServer {
ServerSocket ss=null;
Socket s=null;
DataInputStream inStream=null;
DataOutputStream outStream=null;

public SocketServer() {
try{
init();
}
catch(Exception e){
System.out.println(e.toString());
}
}

void init() throws Exception{
ss=new ServerSocket(765);
s.setSoTimeout(3000);
}

void waitForClient(){
try{
s=ss.accept();
inStream=new DataInputStream(s.getInputStream());
outStream=new DataOutputStream(s.getOutputStream());
outStream.writeUTF("1");
s.setSoTimeout(3000);
waitData();
}
catch(Exception e){
System.out.println(e.toString());
}
}

void waitData(){
while(true){
try{
String str=inStream.readUTF();
System.out.println("Server accept: "+str);
int nu=Integer.parseInt(str)+1;
if(nu>20){
System.out.println("Send end!");
break;
}
else{
str=Integer.toString(nu);
outStream.writeUTF(str);
}
}
catch(Exception e){
System.out.println(e.toString());
break;
}
}
}

public static void main(String[] args) {
SocketServer socketServer1 = new SocketServer();
socketServer1.waitForClient();
}
}

客户端的程序:


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

public class SocketClient{
Socket s=null;
DataInputStream inStream=null;
DataOutputStream outStream=null;

public SocketClient() {
try{
init();
waitData();
}
catch(Exception e){
System.out.println(e.toString());
}
}

void init() throws Exception{
s=new Socket("192.168.0.32",765); //把这里的IP改成你运行SocketServer.class的IP
inStream=new DataInputStream(s.getInputStream());
outStream=new DataOutputStream(s.getOutputStream());
s.setSoTimeout(3000);
}

void waitData(){
while(true){
try{
String str=inStream.readUTF();
System.out.println("Client accept: "+str);
str=Integer.toString(Integer.parseInt(str)+1);
outStream.writeUTF(str);
}
catch(Exception e){
System.out.println(e.toString());
break;
}
}
}

public static void main(String[] args) {
SocketClient socketClient1 = new SocketClient();
}
} 
分享到:
评论

相关推荐

    C# Socket例子

    在“newServer”文件中,一般会包含一个Server类,该类的主要任务是监听特定端口上的连接请求。以下是基本的Server类结构: 1. 创建Socket实例:`Socket serverSocket = new Socket(AddressFamily.InterNetwork, ...

    Socket编程例子

    为了保证数据的完整传输,通常需要在一个循环中不断读写,直到所有数据发送完毕。 3. 关闭连接:完成通信后,客户端和服务器都需要调用`close()`函数关闭Socket,释放资源。 三、UDP Socket编程 UDP Socket编程...

    C#高性能大容量SOCKET并发完成端口例子(有C#客户端)完整实例源码

    例子主要包括SocketAsyncEventArgs通讯封装、服务端实现日志查看、SCOKET列表、上传、下载、远程文件流、吞吐量协议,用于测试SocketAsyncEventArgs的性能和压力,最大连接数支持65535个长连接,最高命令交互速度...

    Tcp ip socket 简单例子

    这个"Tcp_ip socket 简单例子"提供了一个学习基础Socket编程的起点,特别适合初学者。在这个实例中,多线程技术被用于提高程序的并发性能,虽然没有采用异步方式,但依然能帮助理解同步Socket的基本用法。 首先,...

    C#高性能大容量SOCKET并发完成端口例子完整实例源码

    总之,"C#高性能大容量SOCKET并发完成端口例子完整实例源码"为C#开发者提供了一个实践I/O完成端口技术的宝贵资源,通过学习和实践,开发者可以提升对高并发网络编程的理解,提高系统设计和实现的能力。

    Socket编程经典例子源码

    总的来说,这个"Socket编程经典例子源码"是一个宝贵的资源,它能帮助你掌握网络通信的核心原理和实践技巧,提升你在网络编程领域的专业能力。通过研究这些示例,你可以将理论知识转化为实际技能,为今后的开发工作...

    C# 推送数据 SOCKET 例子完整实例源码

    本实例将详细介绍如何使用C#进行数据推送,并提供了一个完整的SOCKET服务器端源码示例。 SOCKET,源自英文单词socket,意为插座,是网络编程中的接口,用于在不同计算机之间建立连接并进行数据传输。在C#中,我们...

    Winform(Socket例子)

    标题“Winform(Socket例子)”暗示我们要讨论的是一个使用Visual Studio (VS) 2012开发的Winform应用,该应用涉及到Socket编程,这是网络编程中的基础组件,用于在不同设备间交换数据。 首先,让我们了解什么是...

    C#高性能大容量SOCKET并发完成端口例子(有C#客户端)完整实例源码.zip

    IOCPDemo_NET(C#高性能大容量SOCKET并发完成端口例子(有C#客户端)完整实例源码),主要包括SocketAsyncEventArgs通讯封装、服务端实现日志查看、SCOKET列表、上传、下载、远程文件流、吞吐量协议,用于测试...

    socket进程间通信的一个一对多例子

    在本示例中,"socket进程间通信的一个一对多例子"着重于利用socket来实现这样的通信模式。Socket是操作系统提供的一种通信接口,允许不同进程或者不同计算机之间的进程进行数据交换。 在标题和描述中提到的"一个...

    socket 的一个简单例子

    本文将通过一个简单的示例,介绍如何使用Socket进行客户端与服务器端的通信,以及涉及的相关知识点。 首先,我们理解一下Socket的基本概念。Socket,通常被称为套接字,是网络通信中的一个抽象接口,它允许应用程序...

    C# IOCP高性能 SOCKET并发完成端口例子(有C#客户端)完整实例源码

    本文将详细解析标题为“C# IOCP高性能 SOCKET并发完成端口例子(有C#客户端)完整实例源码”的技术知识点,以及如何利用C#进行IOCP(I/O完成端口)开发,实现广域网下的高效SOCKET通信。 首先,我们要理解什么是...

    android socket通讯例子

    在`SocketDemo`项目中,你可能看到了一个完整的Android Socket通信示例,包括服务端和客户端的实现,以及数据的发送和接收。通过分析这个示例,你可以更好地理解如何在实际开发中运用Socket通信技术。在实际应用中,...

    Socket例子

    在压缩包中的"Socket例子"可能包含了这些示例的完整代码,包括服务器端的Java应用以及Android客户端的实现。通过分析这些代码,你可以更深入地理解Socket通信的细节,如异常处理、数据编码解码、连接管理等。 总之...

    socket 例子

    在这个"socket例子"中,我们将会探讨如何创建一个简单的客户端和服务端程序,这两个部分是任何基于Socket的网络应用程序的核心。 首先,让我们理解什么是Socket。Socket在操作系统层面提供了一个接口,让应用程序...

    C#高性能大容量SOCKET并发完成端口例子完整实例源码.rar

    本案例聚焦于"C#高性能大容量SOCKET并发完成端口",这是一个针对C#语言的高级网络编程技术,旨在优化多线程环境下Socket通信的效率。 首先,我们需要理解什么是“完成端口”(IO Completion Port,简称IOCP)。IOCP...

    Dos-Socket同步例子(C++)

    通过分析这些文件,我们可以预期博主提供了一个完整的C++ Socket通信示例,包括客户端和服务器端的应用,以及可能封装了Socket操作的类。学习这个示例,开发者可以了解到如何建立Socket连接,发送和接收数据,以及...

    C#Socket例子代码.rar

    在压缩包中的“Socket例子”可能包含了一些基本的C# Socket编程示例代码,包括客户端和服务器端的实现,你可以通过查看这些代码学习如何在实际项目中应用上述知识点。记得在使用Socket编程时,要确保代码的可读性和...

Global site tag (gtag.js) - Google Analytics