Accueil > > > CHAT POUR 2 PERSONNES
CHAT POUR 2 PERSONNES
Information sur la source
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
Sources du même auteur
Sources de la même categorie
Commentaires et avis
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çon de faire un chat entre plusie
chat java client serveur [ par stun ]
Bonjour à tous, j aimerai faire un chat en java sauf qu'une fois le .class du serveur chat programmé 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
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
Chat Client Serveur en JAVA WEB [ par lordatef ]
bonjour tout le monde, je suis entrain de developper une application client/serveur en Java Web, j'ai une tache consiste à realiser un petit Chat entr
aide sur le chat [ par mamou91 ]
salut,je suis débutant en java j'ai besoin de votre aide je veut réalise un chat client serveur multithread chaque client connecté peut envoyer et rec
|
Derniers Blogs
GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc DéMARRONS AVEC LES TASKSDéMARRONS AVEC LES TASKS par richardc
Que vous le vouliez ou non, le développement multi-tâche est maintenant une obligation pour toute nouvelle application. Il est donc vital d'en comprendre les mécanismes et de s'y mettre le plus tôt possible.
En attendant le .NET Framework 4.5 avec le...
Cliquez pour lire la suite de l'article par richardc SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
RE : COURRE : COUR par barhoum1111
Cliquez pour lire la suite par barhoum1111 RE : COURRE : COUR par Julien39
Cliquez pour lire la suite par Julien39
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|