下图描述了ServerSocket与Socket通信的过程
代码如下:
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.Socket;
import java.util.Scanner;
/**
* 描述: 网络客户端
* 版权: Copyright (c) 2012
* 版本: 1.0
* 创建日期: 2012-7-3
* 创建时间: 上午11:24:10
*/
public class Client {
private String host = "10.200.0.58";
private int port = 8087;
public Client()
{
}
public Client(String i_host,int i_port)
{
this.host = i_host;
this.port = i_port;
}
public void chat()
{
try{
Socket socket = new Socket(host,port);
try{
DataInputStream in = new DataInputStream(socket.getInputStream());
DataOutputStream out = new DataOutputStream(socket.getOutputStream());
Scanner scanner = new Scanner(System.in);
while(true){
String send = scanner.nextLine();
System.out.println("客户端:"+send);
out.writeUTF("客户端:"+send);
String accept = in.readUTF();
System.out.println("服务器:"+accept);
}
}
finally{
socket.close();
}
}catch(IOException e)
{
e.printStackTrace();
}
}
public static void main(String[] args) {
new Client().chat();
}
}
下面是服务端的代码:
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;
/**
* 描述: Socket服务器测试
* 版权: Copyright (c) 2012
* 版本: 1.0
* 创建日期: 2012-7-3
* 创建时间: 上午10:48:49
*/
public class Server{
private int port;
public Server(int i_port)
{
port = i_port;
}
public Server()
{
this.port = 8089;
}
/**
* 描述:服务流程
* 作者:李海伟
* 时间:2012-7-3 上午10:50:36
*/
public void service()
{
try{
ServerSocket server = new ServerSocket(port);
System.out.println("服务"+port+"启动");
Socket socket = server.accept();
try{
DataInputStream in = new DataInputStream(socket.getInputStream());
DataOutputStream out = new DataOutputStream(socket.getOutputStream());
Scanner scanner = new Scanner(System.in);
while(true){
String word = in.readUTF();
System.out.println(word);
String send = scanner.nextLine();
System.out.println("服务器:"+send);
out.writeUTF("服务器:"+send);
}
}finally{
socket.close();
}
}catch(IOException e)
{
e.printStackTrace();
}
}
public static void main(String []args)
{
new Server(8087).service();
}
}
- 大小: 81.9 KB
分享到:
相关推荐
在Android与PC之间使用Socket通信时,Android设备作为客户端(Client),而PC则作为服务器(Server)。 **Android客户端实现:** 1. **创建Socket对象**:Android客户端首先需要创建一个Socket对象,指定服务器的IP...
总之,这个Java_socket通信示例提供了一个简单但实用的聊天室应用,展示了如何使用Java的Socket API进行网络通信。通过学习和研究这个示例,开发者可以更好地掌握网络编程的基础,为构建更复杂的网络应用打下坚实的...
通过阅读和分析这个文件,我们可以更深入地理解如何在实际项目中实现Android应用与framework层的Socket通信。 总的来说,虽然Android推荐使用Binder机制进行进程间通信,但Socket通信提供了一种灵活的方式,尤其在...
在这个"JAVA Socket通信示例"中,我们可能会看到如何通过Socket类来创建连接,实现数据的单工、半双工和全双工传输。下面我们将深入探讨这些通信模式以及如何在Java中实现它们。 **1. 单工通信:** 单工通信是一种...
在Java编程语言中,`ServerSocket`和`Socket`是用于网络通信的核心类,它们扮演着客户端和服务器之间建立连接并进行数据交换的关键角色。本教程将深入讲解这两个类的使用,并提供完整的源代码实例,帮助你理解网络...
在Android系统中,Socket通信是一种常见的网络编程方式,它允许应用程序通过网络与其他设备或服务进行数据交换。在Android应用与框架之间使用Socket通信时,通常涉及到Android应用层、框架层以及可能的原生(Native...
在本文中,我们将深入探讨如何使用C#编程语言与Windows Presentation Foundation(WPF)框架来构建一个简单的Socket通信示例。Socket通信是网络程序设计的基础,它允许不同计算机上的应用程序之间进行数据交换。C#...
在Windows环境下进行网络编程时,Socket通信是一种常用的技术。Socket接口是操作系统提供的网络通信API,允许应用程序通过TCP/IP协议栈与其他计算机进行数据交换。本文将详细介绍Windows下的Socket通信代码,包括...
在Android平台上进行网络通信时,Socket通信是一种常见且重要的方式,尤其在实现设备间的数据交换、服务器客户端交互等场景。本实例程序主要涉及到的是Android应用如何利用Socket进行TCP(Transmission Control ...
在这个"Java Socket 通信服务与客户端完整示例"中,我们可以深入理解Socket通信的原理以及如何在实际项目中应用。 1. **Socket基本概念** - **ServerSocket**: 服务器端使用的类,用于监听客户端的连接请求。 - *...
三、Socket通信示例 ```java // 服务器端 ServerSocket serverSocket = new ServerSocket(8888); Socket clientSocket = serverSocket.accept(); BufferedReader in = new BufferedReader(new InputStreamReader...
在Mina与Socket通信的实现中,服务端通常使用Mina来创建一个Acceptor,监听特定端口,等待客户端的连接请求。一旦有连接建立,Mina会自动触发相应的事件处理器,开发者可以在其中处理数据读写。以下是一个基本的...
本篇将深入讲解C#中的Socket通信,通过一个详细的代码示例帮助理解其工作原理。 Socket,又称为套接字,是网络上不同计算机间进行通信的接口。在C#中,我们可以使用System.Net.Sockets命名空间中的Socket类来创建和...
在Android平台上进行网络通信时,Socket通信是一种常见且重要的方式,尤其在实现设备间的数据传输、服务器客户端交互等场景。本实例程序主要关注TCP Socket,它是一种面向连接、可靠的网络通信协议,确保数据的顺序...
Android中socket通信简单实现 socket通信需要有一个服务器和客户端,可以把同一个APP作为服务器跟客户端,也可以分开成两个APP。 先上个图: 这里以一个APP作为服务器跟客户端为示例 1、添加网络访问权限 2、写...
Client端的实现主要是创建一个Socket对象,连接到服务器端的套接字,并与服务器端进行通信。下面是Client端的代码实现: ```java public class tcpClient { public static void main(String[] args) throws ...
这个简单的示例展示了C#中Socket通信的基本步骤,但实际应用中可能需要处理更多细节,比如异常处理、多线程、数据编码解码等。在压缩包文件中,"sockettest"可能是客户端程序,而"socketServer"则代表服务器端程序,...
在Android平台上进行网络通信时,Socket通信是一种常见且重要的方式,尤其在实现聊天应用时。本文将深入探讨如何在Android中实现基于Socket的客户端和服务端通信,以构建一个简单的聊天应用。 首先,让我们理解...
在IT行业中,Android和...总的来说,Android与电脑的Socket通信涉及到网络编程的基础知识,包括Socket的创建与连接、输入/输出流的使用,以及两端的数据处理。理解并掌握这些知识,对于开发跨平台的网络应用至关重要。
在Android平台上,Socket通信是一种常见的网络编程方式,用于设备间的双向数据传输。Socket基于TCP/IP协议,提供了可靠的、面向连接的通信服务。本篇将详细讲解Android Socket通信的基础知识、实现步骤以及注意事项...