中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > Java > 综合文章
一个聊天室中遇到的问题!
作者:未知 时间:2005-07-27 22:35 出处:CSDN 责编:chinaitpower
              摘要:一个聊天室中遇到的问题!
这个聊天室是用java写的,其中一部分的源代码是这样的,但是调试运行不了, 还请各位大侠指点: import java.awt.event.*; import java.net.*; import java.io.*; import java.util.*; import javax.swing.Timer; public class AppServer implements Runnable { ServerSocket server; Socket fromClient; Thread serverThread; public AppServer() { System.out.println("FunChat server start......"); try { server=new ServerSocket(1001); serverThread=new Thread(this); serverThread.start(); } catch(Exception e) { System.out.println("cannot start the thread:"+e); } }//end of AppServer public static void main(String args[]) { new AppServer(); } public void run() { try { while(true) { fromClient=server.accept(); Connect con=new Connect(fromClient); } } catch(Exception e) { System.out.println("cannot listen to the client"+e); }//end of catch }//end of run }//end of AppServer class Connect { ObjectOutputStream streamToClient; int ctr=0; BufferedReader streamFromClient; static Vector vector; static Vector vctrList; String message=""; static String str=new String("UsrList"); static { vector=new Vector(1,1); vctrList=new Vector(1,1); vctrList.addElement((String)str); } int verify(String mesg) { try { RandomAccessField RAS = new RandomAccessFile("UsrPwd.txt","r"); int i = 0; Sting str = ""; while((RAS.getFilePointer())!=(RAS.length())) { str = RAS.readLine(); if(str.equals(mesg)) { ctr=1; break; } } RAS.close(); } catch(Exception e) { System.out.print("Exception Occurred:"+e); } return ctr; } int checkFile(String mesg) { int chk =1; try { RandomAccessFile RS = new RandomAccessFile("UsrPwd.txt","r"); int i = 0; String str = ""; String colon = new String(":"); int index = ((String)mesg).lastIndexof(colon); String userName = (String)mesg.substring(0,index); while((RS.getFukeOiubter())!=(int)(RS.length())) { str = RS.readLine(); int index1 = ((String)str).lastIndexof(colon); String usrName = (String)str.substring(0,index1); if(usrName.equals(userName)) { chk = 0; break; } } } catch(Exception e) { System.out.print("Exception Occurred:"+e); } return chk; } public Connect(Socket inFromClient) { String msg = ""; String mesg =""; try { streamFromClient = new BufferedReader(new InputStreamReader(inFromClient.getInputStream())); streamToClient = new ObjectOutputStream(inFromClient.getOutputStream()); msg = streamFromClient.rreadLine(); if((msg.equals("From Timer"))) { streamToClient.writeObject.writeObject(vector); streamToClient.writeObject(vctrList); } else if(msg.equals("LoginInfo")) { msg = streamFromClient.readLine(); int ver = verify(msg); if(ver==1) { String colon = new String(":"); int index = ((String)msg).lastIndexOf(colon); String userName = (String)msg.substring(0,index); if(!(vctrList.indexOf((String)userName)>0)) { streamToClient.writeObject("Welcome"); vctrList.addElement((String)userName); } } else { streamToClient.writeObject("Ligin denied"); } } else if(msg.equals("RegisterInfo")) { msg = streamFromClient.readLine(); int ret = checkFile(msg); if(ret==0) streamToClient.writeObject("User Exists"); if(ret==1) { FileOutputStream out = new FileOutputStream("UsrPwd.txt",true); PrintStream p = new PrintStream(out); p.println(); p.println(msg); p.close(); streamToClient.writeObject("Registered"); } } else if (msg.equals("User Logout")); { String remUser = streamFromClient.readLine(); boolean b = vctrList.removeElement((String)remUser); } else { message = message+msg; vector.addElement((String)message); streamToClient.writeObject(vector); } } catch(Exception e) { System.out.println("cannot get the client stream connect"+ e); } finally { try { inFromClient.close(); } catch(IOException e) { System.out.println("Exception Occurred:"+e); } } } }
关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有