Obtenir le texte de JTextarea en OutputStream ou imprimer du texte dans la console
Comment obtenir le texte de JTextarea
en OutputStream
ou imprimer le texte de JTextarea
dans la console Java?
import java.io.*;
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
import java.net.*;
class Clients implements ActionListener
{
JFrame fr;
JPanel p1,p2;
JTextArea asend,achat;
JButton b1,b2;
String s1;
String f;
Clients()
{
fr=new JFrame();
fr.setLayout(new GridLayout(2,1));
p1=new JPanel(new GridLayout(1,1));
p2=new JPanel(new GridLayout(1,2));
achat=new JTextArea(80,80);
asend=new JTextArea(30,30);
b1=new JButton("send");
b2=new JButton("close");
p1.add(new JScrollPane(achat));
p2.add(asend);
p2.add(b1);
p1.setVisible(true);
p2.setVisible(true);
p1.setSize(400,300);
p2.setSize(400,100);
fr.add(p1);
fr.add(p2);
fr.setVisible(true);
fr.setSize(400,400);
b1.addActionListener(this);
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==b1)
{
s1 = asend.getText();
appendData(s1);
send();
asend.setText( " ");
set(s1);
}
}
public void set(String a)
{
f=a;
}
public void appendData(String a)
{
String b=a;
//get data from 'asned' textarea into 'achat' textarea
achat.append( "\n SENT: "+b);
}
public String send()
{
String h=f;
//(return the value of string caught from textbox)
return(h);
}
public void setRec(String g)
{
String s2=g;
achat.append("\n RECIEVED: "+s2);
}
public static void main(String s[])
{
Clients d=new Clients();
/*
* object calls da method send 2 acesss non static
* data from static block of main method
*/
String sendn=d.send();
try
{
Socket so=new Socket("169.254.121.33 ",255);
DataInputStream inp=new DataInputStream(so.getInputStream());
PrintStream outp=new PrintStream(so.getOutputStream());
System.out.println(sendn);
Boolean b=true;
while(b)
{
String incomng=inp.readLine();
d.setRec(incomng); //incoming data is transferrd
System.out.println(incomng);
outp.println(sendn);
if(incomng==null)
{
b=false;
}
}
}
catch(IOException ee)
{
}
}
}
Le premier code récupère les données à partir de JTextArea
achat par la méthode set()..dn données à partir d'dis méthode est transféré en statique bloc de principal ou de la console ..Principal problème est que je n'arrive pas à obtenir des données de champ statique de JTextArea
dans la méthode main().
Vous devez vous connecter pour publier un commentaire.
Component.getText()
Cette fonction renvoie unString
tout ce qui est dans cette zone après que vous avez appuyé sur le bouton ou de faire une action.Il existe assez peu de choses à parler avec votre code, mais simplement pour répondre à votre question: Vous pouvez obtenir les données de la non-statique champ de type textarea en principal à l'aide de la
Client
objet que vous avez créé (d
).Donc
serait suffisant pour saisir le texte dans le textarea dans votre méthode principale.