java 聊天室源码_第1页
java 聊天室源码_第2页
java 聊天室源码_第3页
java 聊天室源码_第4页
java 聊天室源码_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、【ClientSocketDemo.java 客户端Java源代码】import .*;import java.io.*;public class ClientSocketDemo /声明客户端Socket对象socket Socket socket = null; /声明客户器端数据输入输出流 DataInputStream in; DataOutputStream out; /声明字符串数组对象response,用于存储从服务器接收到的信息 String response; /执行过程中,没有参数时的构造方法,本地服务器在本地,取默认端口10745 public Clien

2、tSocketDemo() try /创建客户端socket,服务器地址取本地,端口号为10745 socket = new Socket(localhost,10745); /创建客户端数据输入输出流,用于对服务器端发送或接收数据 in = new DataInputStream(socket.getInputStream(); out = new DataOutputStream(socket.getOutputStream(); /获取客户端地址及端口号 String ip = String.valueOf(socket.getLocalAddress(); String port =

3、String.valueOf(socket.getLocalPort(); /向服务器发送数据 out.writeUTF(Hello Server.This connection is from client.); out.writeUTF(ip); out.writeUTF(port); /从服务器接收数据 response = new String3; for (int i = 0; i response.length; i+) responsei = in.readUTF(); System.out.println(responsei); catch(UnknownHostExcepti

4、on e)e.printStackTrace(); catch(IOException e)e.printStackTrace(); /执行过程中,有一个参数时的构造方法,参数指定服务器地址,取默认端口10745 public ClientSocketDemo(String hostname) try /创建客户端socket,hostname参数指定服务器地址,端口号为10745 socket = new Socket(hostname,10745); in = new DataInputStream(socket.getInputStream(); out = new DataOutput

5、Stream(socket.getOutputStream(); String ip = String.valueOf(socket.getLocalAddress(); String port = String.valueOf(socket.getLocalPort(); out.writeUTF(Hello Server.This connection is from client.); out.writeUTF(ip); out.writeUTF(port); response = new String3; for (int i = 0; i response.length; i+) r

6、esponsei = in.readUTF(); System.out.println(responsei); catch(UnknownHostException e)e.printStackTrace(); catch(IOException e)e.printStackTrace(); /执行过程中,有两个个参数时的构造方法,第一个参数hostname指定服务器地址 /第一个参数serverPort指定服务器端口号 public ClientSocketDemo(String hostname,String serverPort) try socket = new Socket(host

7、name,Integer.parseInt(serverPort); in = new DataInputStream(socket.getInputStream(); out = new DataOutputStream(socket.getOutputStream(); String ip = String.valueOf(socket.getLocalAddress(); String port = String.valueOf(socket.getLocalPort(); out.writeUTF(Hello Server.This connection is from client.

8、); out.writeUTF(ip); out.writeUTF(port); response = new String3; for (int i = 0; i response.length; i+) responsei = in.readUTF(); System.out.println(responsei); catch(UnknownHostException e)e.printStackTrace(); catch(IOException e)e.printStackTrace(); public static void main(String args) String comd

9、 = args; if(comd.length = 0) System.out.println(Use localhost() and default port); ClientSocketDemo demo = new ClientSocketDemo(); else if(comd.length = 1) System.out.println(Use default port); ClientSocketDemo demo = new ClientSocketDemo(args0); else if(comd.length = 2) System.out.println(

10、Hostname and port are named by user); ClientSocketDemo demo = new ClientSocketDemo(args0,args1); else System.out.println(ERROR); /【ServerSocketDemo.java 服务器端Java源代码】import .*;import java.io.*;public class ServerSocketDemo /声明ServerSocket类对象 ServerSocket serverSocket; /声明并初始化服务器端监听端口号常量 publi

11、c static final int PORT = 10745; /声明服务器端数据输入输出流 DataInputStream in; DataOutputStream out; /声明InetAddress类对象ip,用于获取服务器地址及端口号等信息 InetAddress ip = null; /声明字符串数组对象request,用于存储从客户端发送来的信息 String request; public ServerSocketDemo() request = new String3; /初始化字符串数组 try /获取本地服务器地址信息 ip = InetAddress.getLocal

12、Host(); /以PORT为服务端口号,创建serverSocket对象以监听该端口上的连接 serverSocket = new ServerSocket(PORT); /创建Socket类的对象socket,用于保存连接到服务器的客户端socket对象 Socket socket = serverSocket.accept(); System.out.println(This is server:+String.valueOf(ip)+PORT); /创建服务器端数据输入输出流,用于对客户端接收或发送数据 in = new DataInputStream(socket.getInputS

13、tream(); out = new DataOutputStream(socket.getOutputStream(); /接收客户端发送来的数据信息,并显示 request0 = in.readUTF(); request1 = in.readUTF(); request2 = in.readUTF(); System.out.println(Received messages form client is:); System.out.println(request0); System.out.println(request1); System.out.println(request2); /向客户端发送数据 out.writeUTF(Hello cli

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论