Rambler's Top100

А Б В Г Д Е Ж З И К Л М Н О П Р С Т У Ф Х Ц Ч Ш Э Ю Я

Все примеры | Примеры по пакетам

Чат-клиент. Реализована клиентская логика


package niochat1;
//Чат-клиент. Реализована клиентская логика.
import appserver1.*;
import java.nio.channels.SocketChannel;
import java.nio.ByteBuffer;
import java.nio.IntBuffer;
import java.io.IOException;
import java.net.InetSocketAddress;
import java.nio.CharBuffer;
import javax.swing.JTextPane;

   public class chatClient {
      public JTextPane jtp=new JTextPane();
      public SocketChannel channel=null;
      private ByteBuffer buffer = ByteBuffer.allocate(1024);
      private CharBuffer chBuffer = buffer.asCharBuffer();
      private ByteBuffer buffer1 = ByteBuffer.allocate(1024);
      private CharBuffer chBuffer1 = buffer1.asCharBuffer();
      Boolean flag=true;
      Boolean send=false;
      static clientFrame cf;
      String msg="";
      String message="";
      String UserID;
      String passwd;

 public JTextPane msgProcessing(JTextPane jtp) throws InterruptedException {
     String msg="";
        try {
            if(channel==null){
                
            channel = connect();
            }
            while(flag==true){
                receiveResponse(jtp);
            }

        } catch (IOException e) {
          e.printStackTrace();
        } 
        return jtp;
      }
 public JTextPane sendMessage(String str) throws InterruptedException {
     String msg="";
        try {
            if(channel==null){
                System.out.println(channel);
            channel = connect();

            }
        buffer.clear();
        chBuffer.clear();
        chBuffer.put(str);
        channel.write(buffer);
        buffer.flip();
        } catch (IOException e) {
          
          e.printStackTrace();
        } finally {

        }
        return jtp;
      }

      private SocketChannel connect()
                                   throws IOException {
        InetSocketAddress socketAddress =
          new InetSocketAddress("localhost", 9999);
        return SocketChannel.open(socketAddress);
      }

      public JTextPane receiveResponse(JTextPane jtp)
                                   throws IOException {

      buffer1.clear();
      chBuffer1.clear();
      channel.read(buffer1);
      buffer1.flip();
      String strch="";
      strch=chBuffer1.toString();
      strch=strch.trim();
       
                msg=jtp.getText();
                if(!msg.equals("")){
                    jtp.setText(msg+"\n"+strch);
                }
                else{
                    jtp.setText(strch);
                }

         return jtp;
      }

      public static void main(String[] args) throws InterruptedException {
       // new chatClient().ChatProcessing("request");
        //new SumClient111().getSum("22");
      }
   }

16.05.2009


Файл к примеру: Простейший чат-сервер с использованием nio
Rambler's Top100


Ассоциативные ссылки