当先锋百科网

首页 1 2 3 4 5 6 7

本次实验主要涉及Java输入输出和网络编程。在本实验中,我们熟悉了Java输入输出和网络编程的基本原理和操作。

在Java中,输入输出和网络通信都是通过IO操作来实现的。我们主要使用了BufferedReader、InputStreamReader、PrintWriter、Socket等类。下面是实现读取文件并输出的代码:

try {
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("input.txt")));
PrintWriter pw = new PrintWriter(new FileOutputStream("output.txt"));
String line;
while ((line = br.readLine()) != null) {
pw.println(line);
}
br.close();
pw.close();
} catch (IOException e) {
e.printStackTrace();
}

接下来我们实现了客户端和服务器之间基本的通信。客户端通过Socket对象连接服务器,并通过PrintWriter向服务器发送消息。服务器也使用Socket对象接收客户端发来的消息,然后通过PrintWriter将消息输出到客户端。下面是简单的代码实现:

// 服务器代码
try {
ServerSocket serverSocket = new ServerSocket(9999);
Socket socket = serverSocket.accept();
BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintWriter pw = new PrintWriter(socket.getOutputStream());
String line;
while ((line = br.readLine()) != null) {
pw.println(line);
pw.flush();
}
br.close();
pw.close();
serverSocket.close();
} catch (IOException e) {
e.printStackTrace();
}
// 客户端代码
try {
Socket socket = new Socket("localhost", 9999);
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintWriter out = new PrintWriter(socket.getOutputStream());
out.println("Hello world!");
out.flush();
String line = in.readLine();
System.out.println("服务器返回:" + line);
in.close();
out.close();
socket.close();
} catch (IOException e) {
e.printStackTrace();
}

通过本次实验,我们更加深入地理解了Java输入输出和网络编程的基本原理和操作,并通过实际代码实现对其的应用。