快速业务通道

Java实现的c/s的聊天室 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-20
:\n" + str); 74. } 75. 76. public void dispose() { 77. try { 78. // this.setVisible(false); 79. super.dispose(); 80. ta.append(s.getInetAddress().getHostName() + "退出" + "\n"); 81. if (s != null) 82. s.close(); 83. cClient.remove(this); 84. ta.append("当前在线人数: " + cClient.size() + "\n\n"); 85. } catch (Exception e) { 86. e.printStackTrace(); 87. } 88. } 89. 90. public void run() { 91. try { 92. 93. DataInputStream dis = new DataInputStream(s.getInputStream()); 94. String str = dis.readUTF(); 95. String st = s.getInetAddress().getHostName(); 96. while (str != null && str.length() != 0) { 97. for (Iterator it = cClient.iterator(); it.hasNext();) { 98. ClientConn cc = (ClientConn) it.next(); 99. if (this != cc) { 100. cc.send(str, st); 101. } 102. } 103. ta1.append(st + "说:\n" + str + "\n"); 104. str = dis.readUTF(); 105. } 106. this.dispose(); 107. } catch (Exception e) { 108. this.dispose(); 109. } 110. 111. } 112. } 113. 114. public static void main(String[] args) throws Exception { 115. JFrame.setDefaultLookAndFeelDecorated(true); 116. ChatServer cs = new ChatServer(8888); 117. cs.startServer(); 118. } 119.}

Java实现的c/s的聊天室(2)

时间:2011-01-22 iteye zhaohong

客户端代码

1.import java.io.*;
2.import java.net.*;
3.import java.awt.*;
4.import java.awt.event.*;
5.import javax.swing.*;
6.
7.import javax.swing.JButton;
8.
9.public class ChatClient extends JFrame {
10.    JTextArea ta = new JTextArea("你可以通过此客户端的群聊!" + "\n" + "发送快捷键  ALT+ENTER \n");
11.    TextArea tf = new TextArea(3, 21);
12.    JButton btn = new JButton("发送");
13.    JPanel jp = new JPanel();
14.    Socket s = null;
15.
16.    public ChatClient() throws Exception {
17.        this.setLayout(new BorderLayout(10, 10));
18.        this.add(ta, BorderLayout.CENTER);
19.        jp.add(btn, BorderLayout.SOUTH);
20.        this.add(tf, BorderLayout.SOUTH);
21.        this.add(jp, BorderLayout.EAST);
22.
23.        btn.addActionListener(new ActionListener() {
24.            public void actionPerformed(ActionEvent ae) {
25.                try {
26.                    String sSend = tf.getText();
27.                    if (sSend.trim().length() == 0)
28.                        return;
29.                    ChatClient.this.send(sSend);
30.                    tf.setText("");
31.                    ta.append

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号