服务端:
package main.java.java04.wangluobianhcneg.SocketTest;
import java.io.*;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;
/**
-
@author:Mr.wang
-
@date:2019/2/22 0022 上午 10:28
*/
public class Server {
public static void main(String args[]) {
//服务器打开端口号8888
try {
ServerSocket ss=new ServerSocket(8888);
//在8888端口上监听,看是否有链接请求过来
System.out.println(“监听在端口:8888”);
Socket s=ss.accept();
//打开输出流
OutputStream os=s.getOutputStream();
DataOutputStream dos=new DataOutputStream(os);
//打开输入流
InputStream is=s.getInputStream();
//收发字符串//把输入流封装在DataInputStream
DataInputStream dis=new DataInputStream(is);
while (true){
//使用readUTF读取字符串
String msg=dis.readUTF();
//读取客户端发送的数据
//int msg=is.read();
//打印出来
System.out.println(“客户端信息:”+msg);
Scanner sc=new Scanner(System.in);
System.out.println(“服务端输入:”);
String fasong=sc.next();
dos.writeUTF(fasong);} // dis.close(); //s.close(); //ss.close(); } catch (IOException e) { e.printStackTrace(); }
}
}
客户端:
package main.java.java04.wangluobianhcneg.SocketTest;
import java.io.*;
import java.net.Socket;
import java.util.Scanner;
/**
- @author:Mr.wang
- @date:2019/2/22 0022 上午 10:29
*/
public class Client {
public static void main(String args[]) {
//连接到本机的8888端口
try {
Socket s=new Socket(“127.0.0.1”,8888);
//字节流 byte 输入流
InputStream is=s.getInputStream();
//输入流
DataInputStream dis=new DataInputStream(is);
//打开输出流
OutputStream os=s.getOutputStream();
//把输出流封装在DataOutputStream中
DataOutputStream dos=new DataOutputStream(os);
//键盘控制台输入
//使用Scanner读取控制台的输入,并发送到服务端
while (true){
Scanner sc = new Scanner(System.in);
String str=sc.next();
System.out.println(“客户端输入:”);
//使用readUtf发送数据
dos.writeUTF(str);
String jieshou=dis.readUTF();
System.out.println(“服务器发来信息说:”+jieshou);
}
//dos.close();
//os.close();
//s.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}