皮皮网

【推荐网站源码】【源码誰写的】【禁止查看html源码】java qq聊天源码附源码_java仿qq聊天系统源码

时间:2024-12-29 01:00:09 来源:vb 多标签源码 作者:学法减分系统源码

1.跪求一个Java编写的聊天聊天多人聊天程序源代码
2.java 做QQ

java qq聊天源码附源码_java仿qq聊天系统源码

跪求一个Java编写的多人聊天程序源代码

       import java.io.InputStream;

       import java.io.DataInputStream;

       import java.io.InputStreamReader;

       import java.io.OutputStream;

       import java.io.DataOutputStream;

       import java.io.BufferedReader;

       import java.net.ServerSocket;

       import java.net.Socket;

       import java.io.IOException;

       import java.util.Date;

       class Server

       {

       public Server()

       {

       try

       {

       ServerSocket s=new ServerSocket();

       Socket ss=s.accept();

       OutputStream out=ss.getOutputStream();

       DataOutputStream dout=new DataOutputStream(out);

       InputStream in=ss.getInputStream();

       DataInputStream din=new DataInputStream(in);

       System.out.print(din.readUTF()+"!");

       dout.writeUTF("你已经连接到服务器"+"\t"+"你的地址:"+ss.getInetAddress()+"\t"

       +"你的链接端口:"+ss.getLocalPort()+"\n");

       new ReadMessage(din).start();

       new SendMessage(dout).start();

       }

       catch (IOException e)

       {

       e.printStackTrace();

       }

       }

       public static void main(String[] args)

       {

       new Server();

       }

       }

       //接受客户端信息

       class ReadMessage extends Thread

       {

       private DataInputStream din;

       public ReadMessage(DataInputStream din)

       {

       this.din=din;

       }

       public void run()

       {

       String str;

       try

       {

       while (true)

       {

       str=din.readUTF();

       System.out.println(new Date().toLocaleString()+"客户端说:"+str);

       if (str.equals("bye"))

       {

       System.out.println("客户端下线!");

       break;

       }

       }

       }

       catch (IOException e)

       {

       e.printStackTrace();

       }

       }

       }

       // 发出服务器信息

       class SendMessage extends Thread

       {

       private DataOutputStream dout;

       public SendMessage(DataOutputStream dout)

       {

       this.dout=dout;

       }

       public void run()

       {

       InputStreamReader inr=new InputStreamReader(System.in);

       BufferedReader buf=new BufferedReader(inr);

       String str;

       try

       {

       while(true)

       {

       str=buf.readLine();

       dout.writeUTF(str);

       if (str.equals("bye"))

       {

       System.out.println("服务器退出!源码源码推荐网站源码");

       System.exit(1);

       }

       }

       }

       catch (IOException e)

       {

       e.printStackTrace();

       }

       }

       }

       import java.io.InputStream;

       import java.io.DataInputStream;

       import java.io.InputStreamReader;

       import java.io.OutputStream;

       import java.io.DataOutputStream;

       import java.io.BufferedReader;

       import java.net.Socket;

       import java.io.IOException;

       import java.util.Date;

       class Client

       {

       public Client()

       {

       try

       {

       Socket s=new Socket("..1.2",附源a仿源码誰写的);

       InputStream in=s.getInputStream();

       DataInputStream din=new DataInputStream(in);

       OutputStream out=s.getOutputStream();

       DataOutputStream dout=new DataOutputStream(out);

       dout.writeUTF("服务器你好!我是系统禁止查看html源码客户端");

       System.out.println(din.readUTF());

       new Thread(new SenderMessage(dout)).start();

       new Thread(new ReaderMessage(din)).start();

       }

       catch (IOException e)

       {

       e.printStackTrace();

       }

       }

       public static void main(String[] args)

       {

       new Client();

       }

       }

       class ReaderMessage implements Runnable

       {

       private DataInputStream din;

       public ReaderMessage(DataInputStream din)

       {

       this.din=din;

       }

       public void run()

       {

       String str;

       try

       {

       while(true)

       {

       str=din.readUTF();

       System.out.println(new Date().toLocaleString()+"服务器说:"+str);

       if (str.equals("bye"))

       {

       System.out.println("服务器已经关闭,此程序自动退出!聊天聊天dnf私服宠物源码");

       break;

       }

       }

       }

       catch (IOException e)

       {

       e.printStackTrace();

       }

       }

       }

       class SenderMessage implements Runnable

       {

       private DataOutputStream dout;

       public SenderMessage(DataOutputStream dout)

       {

       this.dout=dout;

       }

       public void run()

       {

       String str;

       InputStreamReader inf=new InputStreamReader(System.in);

       BufferedReader buf=new BufferedReader(inf);

       try

       {

       while (true)

       {

       str=buf.readLine();

       dout.writeUTF(str);

       if (str.equals("bye"))

       {

       System.out.println("客户端自己退出!源码源码韩服传奇源码");

       System.exit(1);

       }

       }

       }

       catch (IOException e)

       {

       e.printStackTrace();

       }

       }

       }

java 做QQ

       import java.awt.*;

       import java.awt.event.ActionListener;

       import java.awt.event.WindowAdapter;

       import java.awt.event.WindowEvent;

       import java.awt.event.ActionEvent;

       import java.io.*;

       import javax.swing.*;

       import java.awt.Button;

       import java.awt.Panel;

       import java.lang.String;

       import javax.swing.JOptionPane;

       public class QQ extends Frame implements ActionListener{

        Label Lname ,附源a仿Lpassword; //定义用户名和密码的标签

        TextField Tname; //定义用户名的文本框

        JPasswordField Tpassword; //定义密码的文本框。注:使用JPasswordField的好处就是输入的密码是以****显示给用户的

        Panel panel1=new Panel(); //定义面板

        Button Load,login; //定义登陆和注册的按钮

        boolean b=false;

        File file1; //定义记录用户注册的用户名和密码的文件夹

        Writer writer;

        String []Usersname=new String[]; //定义记录用户名的数组

        String []Userspassword=new String[];//定义记录密码的数组

        public QQ(){

        Lname=new Label ("用户名");Lname.setBackground(Color.red);//设置标签的背景颜色

        Lpassword=new Label ("密码");Lpassword.setBackground(Color.red);//设置标签的背景颜色

        Tname=new TextField ();

        Tpassword=new JPasswordField ();

        Load=new Button("登陆");Load.setBackground(Color.lightGray);

        login=new Button("注册");login.setBackground(Color.lightGray);

        add(panel1,BorderLayout.CENTER);

        setLayout(new CardLayout(3,2));

        panel1.add(Lname);

        panel1.add(Tname);

        panel1.add(Lpassword);

        panel1.add(Tpassword);

        panel1.add(Load);Load.addActionListener(this);

        panel1.add(login);login.addActionListener(this);

        }

        public void actionPerformed(ActionEvent e){

       // 用户登录事件处理

        if (e.getSource() == Load) {

        String name1 = Tname.getText();

        String password1 = Tpassword.getText();

        boolean flag = false;

        int index = 0;

        for (int i = 0; i < Usersname.length; i++) {

        if (name1.equals(Usersname[i])) {

        flag = true;

        index = i;

        break;

        }

        }

        if (flag && password1.equals(Userspassword[index])) {

       //处理用户登录成功后的反馈信息

        JOptionPane.showMessageDialog(null, "恭喜您登陆成功!", "消息", JOptionPane.INFORMATION_MESSAGE);

        } else {

        JOptionPane.showMessageDialog(null, "对不起您的用户名或密码错误!", "错误",JOptionPane.ERROR_MESSAGE);

        }

        }

       // 用户注册模块的事件处理

        if (e.getSource() == login) {

        String NCmp = Tname.getText();

        String PCmp = Tpassword.getText();

        boolean flag = false;

        for (int i = 0; i < Usersname.length; i++) {

        if (NCmp.equals(Usersname[i])) {

        flag = true;

        break;

        }

        }

        if (flag) {

        JOptionPane.showMessageDialog(null, "对不起您的用户名已经注册!", "错误", JOptionPane.ERROR_MESSAGE);

        } else {

        int index = 0;

        JOptionPane.showMessageDialog(null, "注册成功!", "消息", JOptionPane.INFORMATION_MESSAGE);

        for (int i = 0; i < Usersname.length; i++) {

        if (Usersname[i] == null) {

        Usersname[i] = NCmp;

        index = i;

        break;

        }

        }

        Userspassword[index] = PCmp;

        }

        try{

        file1=new File("Student.dat");

        FileWriter fw=new FileWriter(file1,true);

        fw.write("用户名"+"\t\t"+"密码"+"\n");

        fw.write(NCmp+"\t\t"+PCmp+"\n");

        fw.close();

        }catch (IOException e1){

        e1.printStackTrace();

        }

        }

       }

        public static void main(String[] args) {

        // TODO Auto-generated method stub

        Frame Fstudent=new QQ();

        Fstudent.setSize(,);

        Fstudent.setTitle("QQ仿真系统");

       // 关闭窗口

        Fstudent.addWindowListener(new WindowAdapter(){

        public void windowClosing(WindowEvent e){

        System.exit(0);

        }

        });

        Fstudent.setVisible(true);

        }

       }

       è‡ªå·±å†™çš„ 呵呵不好意思 主要功能就是登陆 和注册

       æ³¨å†Œæœ‰ç”¨æˆ·ååŒåæ—¶ä¼šæç¤ºï¼ˆæŠ¥é”™ï¼‰

       ä½ è¿è¡Œä¸‹ 就可以了

       ä¸å¥½è¿˜å¯ä»¥è”系呵呵

       è¿™ä¸ªä¸œè¥¿ 还是自己去摸索吧 网上的资料很多 要知道 你如果真的做软件开发的话 你就要去自学很多东西 而不是 去弄现成的 学会好好 百度吧 而不是提问

关键词:yy源码头像

copyright © 2016 powered by 皮皮网   sitemap