¾ÖÇø´À» ÅëÇÑ ¿ø°ÝÁö ¼­¹öÀÇ ÇÁ·Î±×·¥À» ½ÇÇà½ÃÅ°±â


[ ´ÙÀ½ ±Ûµé ] [ À̾ ±Û¿Ã¸®±â(´äÇϱâ) ] [ ÀÚ¹Ù ¹¯°í ´äÇϱâ ]

±Û¾´ÀÌ :¼ÛÁ¤±Ô 1999³â 8¿ù 24ÀÏ 17:58:13

¾È³çÇϽʴϱî?
Àú´Â Çѱ¹°Ç¼³±â¼ú¿¬±¸¿ø¿¡ ´Ù´Ï´Â ¼ÛÁ¤±ÔÀÔ´Ï´Ù.
´Ù¸§ÀÌ ¾Æ´Ï¶ó Á¦°¡ ¾ÖÇø´À» ÅëÇØ ¿ø°ÝÁö¿¡ ÀÖ´Â ¼­¹ö¿¡ ÀÖ´Â ÇÁ·Î±×·¥À» ½ÇÇà½Ãų·Á°í äÆÃÇÁ·Î±×·¥ÀÇ Å¬¶óÀ̾ðÆ®¸¦ ¼öÁ¤Çؼ­ ¿ø°ÝÁöÀÇ Æ÷Æ®¿Í È£½ºÆ®À̸§À» ÅëÇØ Á¢¼Ó¿¡ ¼º°øÇß½À´Ï´Ù. ±×·± ÈÄ ¼­¹öÀÇ ÇÁ·Î±×·¥°ú ¾à¼ÓÇÏ¿© Á¦°¡ ¹öÆ°À» Ŭ¸¯ÇØ 1À» º¸³»¸é ¼­¹öÀÇ ÇÁ·Î±×·¥ÀÌ ½ÇÇàµÇµµ·Ï ¼­¹öÇÁ·Î±×·¥µµ ÄÚµùÀÌ µÈ »óÅÂÀÔ´Ï´Ù. ±×·±µ¥ Ŭ¶óÀ̾ðÆ®¿¡¼­ ¼­¹ö¿¡ Á¢¼ÓÈÄ ¹öÆ°À» ´©¸£¸é ¾î¶»°Ô 1À» º¸³¾Áö ±× ÇÁ·Î±×·¥À» ¸ð¸£°Ú½À´Ï´Ù.
¿¹¸¦ µé¾î codeÁ» ÂüÁ¶ÇÒ ¼ö ÀÖÀ»±î¿ä
¸¹Àº Á¶¾ð ºÎŹµå¸³´Ï´Ù.
±×¸®°í Á¦°¡ ¼öÁ¤ÇÑ Å¬¶óÀ̾ðÆ® ÇÁ·Î±×·¥ÀÔ´Ï´Ù.



import java.net.*;
import java.io.*;
import java.awt.*;
import java.applet.*;
import java.awt.event.*;


//Applet parameter
//host=host name
//port=host port


public class DataComm extends Applet implements Runnable, ActionListener {
protected DataInputStream i;
protected DataOutputStream o;


protected TextArea output;
protected TextField input;
protected Thread listener ;


Button connect,play,stop; //¹öÆ°À» Ãß°¡ÇÑ´Ù. À§¿¡


//ÃÖÃÊ ½ÃÇà
public void init(){
setLayout (new BorderLayout(5,10)); //±âº» ¼³Á¤
Panel top=new Panel();
top.setLayout(new FlowLayout());


connect=new Button("¿¬°á") ;
connect.addActionListener(this);


play=new Button("½ÇÇà");
play.addActionListener(this);


stop=new Button("ÁßÁö");
stop.addActionListener(this);


top.add(connect);
top.add(play);
top.add(stop);
add("North", top);


setVisible(true);


//ÅýºÆ® ¿µ¿ª ¼³Á¤
add("Center" , output=new TextArea());
output.setEditable(false); //³»¿ëÀ» ¼öÁ¤ÇÒ ¼ö ¾ø´Ù.
add("South" ,input=new TextField());
input.setEditable(false); //³»¿ëÀ» ¼öÁ¤ÇÒ ¼ö ¾ø´Ù.
}


public void start() {
listener= new Thread (this); //runnable()À» targetÀ¸·Î Àâ´Â´Ù.
listener.start(); //½º·¹µå ½ÃÀÛ run()À» È£Ãâ
}
public void stop() {
if(listener !=null)
listener.stop();
listener=null;
}


public void run() {


//try ~catch¹® ½ÃÀÛ
try
{
//ÆĶó¹ÌÅÍ Ãß°¡
String host=" È£½ºÆ® ";


if(host==null)
host =getCodeBase().getHost();


String port="3000";
if(port==null)
port= "9830";


output.appendText("Connection to "+host+ ":" +port+ "...");


Socket s=new Socket(host, Integer.parseInt(port));


//µ¥ÀÌÅÍ´Â java.ioÀÇ InputStream°ú OutputStreamÀ» ÀÌ¿ëÇÏ¿© ÀÐÀ» ¼ö ÀÖ´Ù.


i=new DataInputStream (new BufferedInputStream (s.getInputStream()));
o=new DataOutputStream (new BufferedOutputStream (s.getOutputStream()));
output.appendText("Connected...\n");
input.setEditable(true);
input.requestFocus();


execute();
}catch(IOException ex) {
ByteArrayOutputStream out=new ByteArrayOutputStream();
ex.printStackTrace( new PrintStream(out));
output.appendText("\n" +out);
} //try~ catch¹® Á¾·á
}



public void execute() {


//try ~catch¹® ½ÃÀÛ
try
{


while(true) { //while¹® ½ÃÀÛ


String line=i.readUTF();
output.appendText(line +"\n");
}//while¹® Á¾·á


} catch(IOException ex) {
ByteArrayOutputStream out=new ByteArrayOutputStream();
ex.printStackTrace( new PrintStream(out));
output.appendText(out.toString());


}finally {
listener=null;
input.hide();
validate();
//try ~catch¹® ½ÃÀÛ
try
{
o.close();
}catch(IOException ex) {
ex.printStackTrace();
}
}
}


public void actionPerformed(ActionEvent e) {
}


public boolean handleEvent(Event e) {
if((e.target==input) && (e.id==Event.ACTION_EVENT)) {
//try ~catch ¹® ½ÃÀÛ
try
{
o.writeUTF((String)e.arg);
o.flush();
}catch(IOException ex) {
ex.printStackTrace();
listener.stop();
}
input.setText("");
return true;
}


else if((e.target==this)&&(e.id== Event.WINDOW_DESTROY))
{
if(listener!=null)
listener.stop();
hide();
return true;
}
return super.handleEvent(e);
}


}






´ÙÀ½ ±Ûµé:



À̾ ±Û¿Ã¸®±â(´äÇϱâ)

À̸§:
E-Mail:
Á¦¸ñ:
³»¿ë:
HTML ÅÂ±× Æ÷ÇÔ ¿©ºÎ: HTML ¹®¼­ÀÏ °æ¿ì üũ
°ü·Ã URL(¼±ÅÃ):
URL Á¦¸ñ(¼±ÅÃ):
°ü·Ã À̹ÌÁö URL:


[ ´ÙÀ½ ±Ûµé ] [ À̾ ±Û¿Ã¸®±â(´äÇϱâ) ] [ ÀÚ¹Ù ¹¯°í ´äÇϱâ ]