Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

CHAT POUR 2 PERSONNES


Information sur la source

Catégorie :Application Classé sous : chat, client, serveur Niveau : Initié Date de création : 07/07/2002 Date de mise à jour : 07/07/2002 19:50:02 Vu / téléchargé: 13 343 / 1 602

Note :
7,75 / 10 - par 4 personnes
7,75 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (3)
Ajouter un commentaire et/ou une note

Description

Ce code permet à 2 personnes de communiquer à travers une interface graphique.
Les 2 personnes voulant communiquer doivent compiler le code et l'executer  sur la machine

Il faut simplement penser à inverser les numéros de port de reception et d'emission entre les 2 utilisateurs.

Si vous avez des problemes, mailez moi sky13@voila.fr
 

Source

  • import java.awt.*;
  • import java.awt.event.*;
  • import java.io.*;
  • import java.net.*;
  • class Client2 extends Frame {
  • //Declaration des attributs
  • TextField t1;
  • TextField adIP;
  • Label adrIP;
  • Label Nom;
  • TextField nom;
  • Button b1;
  • static int a;
  • Socket mySock;
  • PrintStream ps;
  • Label lText;
  • Label lBvenue;
  • String ligne;
  • static TextArea ta;
  • public Client2() {
  • //Titre de la fenetre
  • setTitle("Client");
  • //Fermeture de la fenetre
  • addWindowListener( new WindowAdapter() {
  • public void windowClosing(WindowEvent e) {
  • System.exit(0);
  • }
  • });
  • //Instanciation des attributs
  • t1 = new TextField();
  • adIP = new TextField();
  • nom = new TextField();
  • b1 = new Button("Envoyer");
  • lText = new Label("Texte à envoyer :");
  • adrIP = new Label("Entrez l'adresse IP ");
  • Nom = new Label("Entrez votre nom ");
  • lBvenue = new Label("Bienvenue sur votre application chat");
  • ta = new TextArea(10,6);
  • ta.setEditable(false);
  • a=1;
  • //Definir le layout et creer ses composants
  • setLayout(new GridBagLayout());
  • GridBagConstraints c = new GridBagConstraints();
  • c.gridx = 1;c.gridy = 0;c.gridheight = 1;c.gridwidth = 1;
  • c.fill = GridBagConstraints.BOTH;
  • c.weightx = 1.0;c.weighty = 1.0;
  • c.insets = new Insets(5,5,5,5);
  • add(lBvenue,c);
  • c.gridy = 1;
  • add(Nom,c);
  • c.gridy = 2;
  • add(nom,c);
  • c.gridy = 3;
  • add(adrIP,c);
  • c.gridy = 4;
  • add(adIP,c);
  • c.gridy = 5;
  • add(lText,c);
  • c.gridy = 6;
  • add(t1,c);
  • c.gridy = 7;
  • add(b1,c);
  • c.gridy = 8;
  • add(ta,c);
  • //Action sur le bouton b1
  • b1.addActionListener(new ActionListener() {
  • public void actionPerformed(ActionEvent e) {
  • try
  • {
  • if (a==1)
  • {
  • mySock = new Socket(adIP.getText(), 11111);
  • ps= new PrintStream(mySock.getOutputStream());
  • }
  • //System.out.println("creation socket");
  • ps.print(t1.getText());
  • ta.append("<" + nom.getText() + "> " + t1.getText() + "\n");
  • ps.println();
  • a=1;
  • ps.close();
  • mySock.close();
  • t1.setText("");
  • adIP.setEditable(false);
  • nom.setEditable(false);
  • }
  • catch(Exception err){err.printStackTrace();}
  • }
  • });
  • //Taille de la fenetre
  • setBackground(Color.cyan);
  • pack();
  • setLocation(350,350);
  • //rendre la fenetre visible
  • setVisible(true);
  • }
  • //Programme principal
  • public static void main (String [] args)
  • {
  • new Client2();
  • Socket sock2;
  • ServerSocket ss2;
  • DataInputStream dis2;
  • String ligne;
  • String temp = "";
  • try
  • { ss2 = new ServerSocket(8080);
  • while(true)
  • {
  • temp = "<Client> ";
  • sock2 = ss2.accept();
  • dis2 = new DataInputStream(sock2.getInputStream());
  • while((ligne =dis2.readLine())!= null)
  • {
  • temp += ligne;
  • }
  • temp += "\n";
  • ta.append(temp);
  • dis2.close();
  • sock2.close();
  • }
  • }
  • catch(Exception err){err.printStackTrace();}
  • }
  • }
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.net.*;

class Client2 extends Frame {

  //Declaration des attributs
  TextField t1;
  TextField adIP;
  Label adrIP;
  Label Nom;
  TextField nom;
  Button b1;
  static int a;
  Socket mySock;
  PrintStream ps;
  Label lText;
  Label lBvenue;
  String ligne;
  static TextArea ta;
  

  public Client2() {
    

    //Titre de la fenetre
    setTitle("Client");

    //Fermeture de la fenetre
    addWindowListener( new WindowAdapter() {
      public void windowClosing(WindowEvent e) {
        System.exit(0);
      }
    });

    //Instanciation des attributs
    t1 = new TextField();
    adIP = new TextField();
    nom = new TextField();
    b1 = new Button("Envoyer");
    lText = new Label("Texte à envoyer :");
    adrIP = new Label("Entrez l'adresse IP ");
    Nom = new Label("Entrez votre nom ");
    lBvenue = new Label("Bienvenue sur votre application chat");
    ta = new TextArea(10,6);
    ta.setEditable(false);
    a=1;

   
    //Definir le layout et creer ses composants
    setLayout(new GridBagLayout());
    GridBagConstraints c = new GridBagConstraints();
    c.gridx = 1;c.gridy = 0;c.gridheight = 1;c.gridwidth = 1;
    c.fill = GridBagConstraints.BOTH;
    c.weightx = 1.0;c.weighty = 1.0;
    c.insets = new Insets(5,5,5,5);
    add(lBvenue,c);
    c.gridy = 1;
    add(Nom,c);
    c.gridy = 2;
    add(nom,c);
    c.gridy = 3;
    add(adrIP,c);
    c.gridy = 4;
    add(adIP,c);
    c.gridy = 5;
    add(lText,c);
    c.gridy = 6;
    add(t1,c);
    c.gridy = 7;
    add(b1,c);
    c.gridy = 8;
    add(ta,c);

    //Action sur le bouton b1
    b1.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent e) {

        try
        {
          if (a==1)
          {
            mySock = new Socket(adIP.getText(), 11111);
            ps= new PrintStream(mySock.getOutputStream());
          }

          //System.out.println("creation socket");
          ps.print(t1.getText());
          ta.append("<" + nom.getText() + "> " + t1.getText() + "\n");
          ps.println();
          a=1;
          ps.close();
          mySock.close();
          t1.setText("");
          adIP.setEditable(false);
          nom.setEditable(false);

        }
        catch(Exception err){err.printStackTrace();}
      }
    });

    //Taille de la fenetre
    setBackground(Color.cyan);
    pack();
    setLocation(350,350);
    //rendre la fenetre visible
    setVisible(true);

  

  }

  //Programme principal
  public static void main (String [] args)
  {
    new Client2();
    Socket sock2;
    ServerSocket ss2;
    DataInputStream dis2;
    String ligne;
    String temp = "";
    try
    { ss2 = new ServerSocket(8080);
    
    
      while(true)
    
      {
      
      
          temp = "<Client> ";    
          sock2 = ss2.accept();
          dis2 = new DataInputStream(sock2.getInputStream());
          while((ligne =dis2.readLine())!= null)
          {
            temp += ligne;
          }
          temp += "\n";
          ta.append(temp);
          dis2.close();
          sock2.close();
         
          
     }
   }
      catch(Exception err){err.printStackTrace();}
    
  
  }

}

Conclusion

pour visiter mon site web http://www.ifrance.com/timetoprogram
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Commentaires et avis

signaler à un administrateur
Commentaire de argzoygt le 15/04/2003 12:55:09

C'est cool mais si  je ne connais pas l'adresse IP de la personne avec laquelle je veux entrer en communication on fait comment ?

signaler à un administrateur
Commentaire de aquewel le 30/06/2004 13:59:21

Comment cela marche ???????????

Comment compiler le code ????????

signaler à un administrateur
Commentaire de obydissonn le 28/02/2006 17:52:14

cmt ça marche ce code

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Code pour chat (Client/Serveur) en MulticastSocket. [ par projet2501 ] Je recherche le code client/serveur d'un logiciel de chat en serveur multicastSocket et en java bien sur !!! Merci d'avance :o) chat prive en java client/serveur [ par aboudiop ] diop je cherche une code source pour le chat prive en javaou bien des explicqtion comment privatise un chat.merci. t'chat multiconnexion sans serveur??? [ par supers03 ] Bon alors ma question est plus une question d'algorithme que de java ...Je cherche depuis un petit moment une fa&#231;on de faire un chat entre plusie chat java client serveur [ par stun ] Bonjour &#224; tous, j aimerai faire un chat en java sauf qu'une fois le .class du serveur chat programm&#233; je ne sais pas comment le lancer chez client serveur chat en java [ par fifihihi ] fifihihiBonjour à tous,j'aurais quelques questions à vous poser concernant la programmation en java d'un client serveur chat. y'a t il quelqu'un qui p serveur client chat en java [ par fifihihi ] fifihihibonjour a tous le mondej'ai envis de creer mon serveur-client chat en java mais avant ca je voulai savoir comment cela marche au niveau reseau chat client /serveur [ par djab12 ] slt!  je suis entreine de faire un chat client /serveur, mé je ne sais pas comment faire la connection de serveur,svp  si quelqu'un peut m'aider de me application de chat via bluetooth [ par yoyo0886 ] Bonjour a tout le monde;je suis entrain de developpée une application de chat(client/serveur) via bluetoothj'ai choisit de travaillée sur le protocole Application client/serveur via internet [ par samlane_37 ] Bonjour,J'aimerais crée un petit jeu avec plusieurs utilisateurs qui se connecter dessus via internet mais je ne sais pas du tout comment m'y prendre. client P2P [ par gide81 ] salut as tous, je souhaite développer client de CHat P2P basé sur une architecture décentralisée et structuré.j'ai utilisé le protocole FRee Pastry po


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,468 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.