public class TestClient {
static DataInputStream dis =null;
static DataOutputStream dos= null;
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
TestClient tc = new TestClient();
tc.connectServer();
}
public void connectServer(){
try {
Socket socket = new Socket("172.20.205.222",8888);
InputStream is = socket.getInputStream();
OutputStream ous = socket.getOutputStream();
dis = new DataInputStream(is);
dos = new DataOutputStream(ous);
writeMethod();
readMethod();
//dos.close();
//dis.close();
//socket.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void writeMethod(){
new WriteThread().start();
}
public void readMethod(){
new ReadThread().start();
}
class WriteThread extends Thread{
boolean flag = true;
@Override
public void run() {
// TODO Auto-generated method stub
while(flag){
Scanner scanner = new Scanner(System.in);
String inputContent = scanner.next(); //阻塞方法
if(inputContent!=null){
try {
dos.writeUTF(inputContent);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
class ReadThread extends Thread{
boolean flag = true;
@Override
public void run() {
// TODO Auto-generated method stub
while(flag){
String returnContent;
try {
returnContent = dis.readUTF();
if(returnContent!=null){
System.out.println("服务器端对客户端说:"+returnContent);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}android socket 即时通信
最新推荐文章于 2025-12-19 19:34:15 发布
本文介绍了一个使用Java实现的简单客户端程序,该程序通过Socket连接到指定的服务器地址和端口进行数据交换。客户端包括写入线程和读取线程,能够接收用户输入并发送到服务器,同时也能从服务器接收数据并显示。
1036

被折叠的 条评论
为什么被折叠?



