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

简单级聊天室程序

阅读更多
java 代码
  1. //服务器端代码   
  2. import java.io.BufferedReader;   
  3. import java.io.BufferedWriter;   
  4. import java.io.IOException;   
  5. import java.io.InputStreamReader;   
  6. import java.io.OutputStreamWriter;   
  7. import java.io.PrintWriter;   
  8. import java.net.ServerSocket;   
  9. import java.net.Socket;   
  10.   
  11. public class Server{   
  12.     public static void main(String[] args) throws IOException {   
  13.         int PORT = 8999;   
  14.         BufferedReader in = null;PrintWriter out = null;   
  15.         try{   
  16. //          以端口PORT创建一个服务器Socket   
  17.             ServerSocket s = new ServerSocket(PORT);   
  18.             //监听并接受与此socket的连接,该方法会阻塞直到有一个连接产生   
  19.             Socket socket = s.accept();   
  20.             System.out.println("服务器启动成功,等待客户端请求");   
  21.             //创建新的数据输入流,以便从指定的输入流中读取数据   
  22.             try{   
  23.                 in = new BufferedReader(new InputStreamReader(socket.getInputStream()));   
  24.                 //创建新的数据输出流,以便从指定的输出流中写出数据   
  25.                 out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())),true);   
  26.                 System.out.println("Client ip : "+s.getInetAddress());   
  27.                 out.println("welcome to my chatRoom!");   
  28.                 while (true) {   
  29.                     String str = in.readLine();   
  30.                     if (str.equals("exit") || str==null) {   
  31.                         break;   
  32.                     }   
  33.                     if (str != null && str.length() > 0) {   
  34.                         System.out.println("客户端:" + str);   
  35.                     }   
  36.                 }   
  37.                 System.out.println("Client ip : "+s.getInetAddress()+" want to leave");   
  38.             }   
  39.             finally{   
  40.                 in.close();   
  41.                 out.close();   
  42.                 socket.close();   
  43.                 s.close();   
  44.             }   
  45.         }catch(Exception e){   
  46.             e.printStackTrace();   
  47.         }   
  48.     }      
  49. }  

 

java 代码
  1. //客户端代码   
  2. import java.io.BufferedReader;   
  3. import java.io.BufferedWriter;   
  4. import java.io.DataInputStream;   
  5. import java.io.IOException;   
  6. import java.io.InputStreamReader;   
  7. import java.io.OutputStreamWriter;   
  8. import java.io.PrintWriter;   
  9. import java.net.Socket;   
  10. import java.net.UnknownHostException;   
  11. /**  
  12.  * Socket网络编程客户端程序  
  13.  * @author arthurs  
  14.  */  
  15. public class Client {   
  16.   
  17.     public static void main(String[] args) throws IOException {   
  18.         //创建一个socket连接,参数包括服务器端IP地址,端口号;   
  19.         Socket socket = new Socket("localhost",8999);   
  20.         BufferedReader in = null;PrintWriter out = null;   
  21.         BufferedReader sysin = null;   
  22.         try {   
  23.             // if(outCh.toString().equals("exit"))   
  24.             // break;   
  25.             // 创建一个数据输入流,从指定的输入流中读取数据   
  26.             in = new BufferedReader(new InputStreamReader(socket.getInputStream()));   
  27.             // 创建一个数据输出流,从指定的输出流中写出数据   
  28.             out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())), true);   
  29.             String str = in.readLine();   
  30.             System.out.println("服务器端:" + str);   
  31.             sysin = new BufferedReader(new InputStreamReader(new DataInputStream(System.in)));   
  32.             String strOut = sysin.readLine();   
  33.             while(!strOut.equals("exit")){   
  34.                 out.println(strOut);   
  35.                 strOut = sysin.readLine();   
  36.             }   
  37.         } catch (UnknownHostException e) {   
  38.             e.printStackTrace();   
  39.         } catch (IOException e) {   
  40.             e.printStackTrace();   
  41.         } finally {   
  42.             in.close();   
  43.             out.close();   
  44.             sysin.close();   
  45.             socket.close();   
  46.         }   
  47.     }   
  48. }  
分享到:
评论
1 楼 lh8489 2008-11-04  
确实很简单

相关推荐

    简单聊天室完整程序

    在聊天室程序中,对话框可能包括登录对话框(用于输入用户名)、主聊天对话框(展示聊天记录和输入框)等。这些对话框通常由消息循环机制驱动,响应用户的鼠标和键盘事件,提供友好的交互体验。 4. **列表(List)*...

    asp.net 简易聊天室程序源码

    【工控老马出品,必属精品,亲测...资源名:asp.net 简易聊天室程序源码 资源类型:程序源代码 源码说明: 简易聊天室,入门级示例,适合新手,运行时 请以管理员身份运行该项目 适合人群:新手及有一定经验的开发人员

    C+++网络聊天室设计报告和源程序

    根据给定文件的信息,我们可以详细...综上所述,本文档详细介绍了C++网络聊天室的设计与实现,包括需求分析、相关知识介绍、详细设计以及程序运行结果等方面的内容,旨在帮助读者理解和实现一个简单的网络聊天室系统。

    极简单的聊天室程序(会议室)

    【标题】:“极简单的聊天室程序(会议室)” 在IT领域,聊天室程序是一种常见的多用户交互应用,它允许用户实时地发送和接收消息。在这个特定的案例中,我们讨论的是一个“极简单的聊天室程序”,它仅仅由一个文件...

    基于c++的winsock局域网聊天室程序设计

    本文将深入探讨如何使用C++编程语言结合Winsock库,设计一个基于局域网的聊天室程序。 首先,让我们理解Winsock。Winsock,即Windows Socket,是微软在Windows操作系统中实现的对Berkeley Sockets接口的一种兼容性...

    聊天室程序swing源码.rar直接可用

    在这个"聊天室程序swing源码.rar"中,我们可以预见到一个基于Swing构建的简单聊天应用,它可能包含客户端和服务器端两部分。 Swing的优点在于它提供了比Java AWT(Abstract Window Toolkit)更丰富的组件和更现代的...

    简单的聊天室程序(基于ASP.NET 2.0)

    【标题】"简单的聊天室程序(基于ASP.NET 2.0)" 描述了一个使用ASP.NET 2.0技术开发的初级水平的在线聊天应用程序。这个项目旨在为初学者提供一个学习和实践的平台,让他们了解如何在Web环境中构建交互式应用。 ...

    java socket写的聊天室程序

    Java Socket 编写的聊天室程序是一种基于网络通信的多用户交互应用。Socket 是 Java 提供的网络编程接口,它使得两个或多个网络上的应用程序能够通过套接字进行双向通信。在这个程序中,Socket 被用来创建服务器端与...

    简单的J2EE聊天室

    在这个"简单的J2EE聊天室"项目中,我们可以看到如何利用J2EE技术来实现一个在线多人聊天的功能。 首先,J2EE聊天室的核心组成部分可能包括以下几个关键模块: 1. **Servlet**:Servlet是J2EE中的核心组件,负责...

    聊天室程序

    总结来说,这个聊天室程序利用ASP技术和Access数据库提供了一个简单的在线交流平台。它展示了ASP动态网页开发的基本原理和数据库集成的应用,对于学习和理解服务器端脚本和数据库交互有着很好的示例作用。

    eclipse实现的聊天室

    本项目"eclipse实现的聊天室"提供了一个实用的示例,旨在帮助开发者了解如何利用Eclipse来构建实时通信的应用。这个聊天室示例不仅能够加深对网络编程的理解,还能展示多线程、套接字编程以及并发处理等关键概念。 ...

    C# socket 简易版聊天室程序

    本项目“C# socket 简易版聊天室程序”就是一个很好的学习示例,它利用Socket对象实现了服务器端与多个客户端之间的实时交互。 首先,我们来了解一下Socket的基本概念。Socket,又称为套接字,是网络通信中的一个...

    asp入门级聊天室dreamweaver

    这个"asp入门级聊天室dreamweaver"的资料很适合初学者,特别是那些希望通过Dreamweaver来学习ASP技术的人。Dreamweaver是Adobe公司的一款强大的Web开发工具,它支持多种Web开发语言,包括ASP。 ASP技术主要基于HTML...

    简洁的Delphi简洁的聊天室程序

    这个简洁的Delphi聊天室程序是专为初学者设计的学习资源,旨在帮助他们理解和掌握如何在Delphi环境中构建实时通信应用。 首先,我们要了解聊天室程序的基本构成。一个聊天室通常包括客户端和服务器两部分。客户端...

    基于Socket的MFC聊天室程序

    在本项目中,我们利用MFC(Microsoft Foundation Classes)框架和Socket编程来创建一个简单的聊天室程序。MFC是微软提供的一套C++库,它封装了Windows API,为开发者提供了构建Windows应用程序的便利。 1. **MFC...

    简单Winsock聊天室软件

    【标题】"简单Winsock聊天室软件"是一个基于VC++编程环境,利用Winsock2.0库和WSAAsyncSelect事件驱动模型实现的简单聊天室应用程序。它为初学者提供了学习网络编程,尤其是TCP/IP通信的基本概念和实践的平台。 ...

    java功能聊天室代码一个简单的聊天室

    【Java聊天室程序详解】 Java聊天室是一种基于网络通信的应用程序,它允许用户通过文本方式进行实时交流。在本文中,我们将深入探讨一个简单的Java聊天室的实现,包括其设计原理、核心功能以及如何通过`Chatroom....

    Java聊天室程序源代码

    Java聊天室程序源代码是一个基于Java Swing技术实现的网络应用程序,它允许用户通过网络进行实时的文本交流。这个项目的核心在于网络通信和图形用户界面的设计,这两部分是Java编程中的重要知识点。 首先,我们来...

    udp协议实现的聊天室程序

    本项目实现了一个基于UDP的聊天室程序,允许在局域网内的多用户进行实时交流。这里我们将深入探讨UDP协议的特点以及如何利用其特性构建聊天室程序。 首先,UDP协议的主要特点是轻量级和高效。由于它不进行连接建立...

    PHP+Ajax简易Chat聊天室源码,无需数据库支持,无需配置,小白也能快速上手的简约风聊天室小程序,全面支持电脑端和手机端。

    全部源码明文无加密,支持二开,将本程序放到你的网站PHP环境,任意二级目录内使用即可,如 abc.com/chat 目录要有读写权限,不如无法存放聊天记录。聊天输入框发送:qksyltjl(可以清空所有聊天记录)想修改在ajax....

Global site tag (gtag.js) - Google Analytics