从Console中读取内容:
BufferedReader inputReader;
// Alt + Shift + z try...catch等快捷键
// 从Console读取内容
try {
inputReader = new BufferedReader(new InputStreamReader(System.in));
String inputContent;
while (!(inputContent = inputReader.readLine()).equals("bye")) {
System.out.println(inputContent);
}
} catch (Exception e) {
e.printStackTrace();
}
一.单向通信
Client -> Server
SocketClient.java
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.Socket;
public class SocketClient {
public static void main(String[] args) {
SocketClient client = new SocketClient();
client.start();
}
public void start() {
BufferedReader inputReader = null;
BufferedWriter writer = null;
Socket socket = null;
// 从Console读取内容
try {
socket = new Socket("127.0.0.1", 9898);
// 从socket进行写入
writer = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
inputReader = new BufferedReader(new InputStreamReader(System.in));
String inputContent;
while (!(inputContent = inputReader.readLine()).equals("bye")) {
writer.write(inputContent + "\n");
writer.flush();
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
writer.close();
inputReader.close();
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
SocketServer.java
import java.io.BufferedReader;
i