我需要你们的帮助。我是网络新手并尝试将文本文件从客户端发送到服务器,然后再次返回客户端。
下面的代码适用于第一步,将文本文件从客户端发送到服务器。服务器接收文件,并向其添加内容(不在此代码中)。
然后我的问题开始了:如何让服务器再次将文本文件发送回客户端,并让客户端接收它?
我真的不知道该怎么做。而且,如果我想多次来回发送文件,你能告诉我是否需要在我的代码中添加while循环吗?
由于
客户端(开始向服务器发送文本文件)
public class TClient {
public static void main(String[] args) throws IOException {
Socket socket = new Socket("localhost", 11111);
InputStream in = new FileInputStream("send.txt");
OutputStream out = socket.getOutputStream();
byte[] buf = new byte[8192];
int len = 0;
while ((len = in.read(buf)) != -1) {
out.write(buf, 0, len);
}
out.close();
in.close();
}
}
服务器(从客户端接收文本文件开始)
public class TServer {
public static void main(String[] args) throws IOException {
ServerSocket ss = new ServerSocket(11111);
Socket socket = ss.accept();
InputStream in = socket.getInputStream();
OutputStream out = new FileOutputStream("receive.txt");
byte[] buf = new byte[8192];
int len = 0;
while ((len = in.read(buf)) != -1) {
out.write(buf, 0, len);
}
out.close();
in.close();
}
}