IO技术一直有用到,但未曾深入了解
没时间不是理由,怯于拥抱未知才是事实。
从简单开始,放慢速度,有时也许慢一点才是真正意义上的快一点。
服务器端示例代码
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;
public class Server {
public static void main(String[] args) {
try {
//定义一个ServerSockcet对象进行服务器的端口注册
ServerSocket ss = new ServerSocket(9999);
//监听客户端socket的链接请求
Socket socket = ss.accept();
//从socket管道中得到一个字节输入流对象
InputStream is = socket.getInputStream();
//把字节输入流包装成一个缓冲字符输入流
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
String msg = null;
while((msg = reader.readLine()) != null){
System.out.println("服务端接收到:" + msg);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
客户端示例代码
import java.io.IOException;
import java.io.OutputStream;
import java.io.PrintStream;
import java.net.Socket;
import java.util.Scanner;
public class Client {
public static void main(String[] args) throws IOException {
//创建socket对象请求服务端链接
Socket socket = new Socket("127.0.0.1", Integer.parseInt("9999"));
//从socket对象中获取一个字节输出流
OutputStream os = socket.getOutputStream();
//把字节输出流包装成一个打印流
PrintStream ps = new PrintStream(os);
Scanner sc = new Scanner(System.in);
while (true) {
System.out.print("请说:");
String msg = sc.nextLine();
ps.println(msg);
ps.flush();
}
}
}