А Б В Г Д Е Ж З И К Л М Н О П Р С Т У Ф Х Ц Ч Ш Э Ю Я Все примеры | Примеры по пакетам |
|
Чат-клиент. Реализована клиентская логика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");
}
}
Файл к примеру: Простейший чат-сервер с использованием nio |
|
|
|
|