📄 client.java
字号:
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.FileOutputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
public class Client {
public static void main(String[] args) throws Exception {
if (args.length != 1) {
System.err.println("Usage: Client <server>");
return;
}
/*端口号,默认为5432*/
int port = 5432;
int MAX_SIZE = 1024;
byte[] buffer = new byte[MAX_SIZE];
Socket clientSocket = new Socket(args[0], port);
System.out.println(args[0] + " is listening to your request:");
BufferedReader input = new BufferedReader(new InputStreamReader(
System.in));
String fromUser = input.readLine();
DataOutputStream outToServer = new DataOutputStream(clientSocket
.getOutputStream());
//发送到服务器
outToServer.writeBytes(fromUser + "\n");
//接收服务器返回的信息
BufferedInputStream inFromServer = new BufferedInputStream(clientSocket
.getInputStream());
inFromServer.read(buffer);
String all=new String(buffer);
all=all.trim();
//分隔出头部信息和主体文件信息
String[] ss=all.split("HeaderEnd");
/*头部信息*/
String header=ss[0];
/*文件主体信息*/
String intoFile=ss[1];
PrintWriter screen = new PrintWriter(System.out, true);
//输出头部信息
screen.write(header);
screen.flush();
System.out.println();
System.out.println("Enter the name of the file to save: ");
String filename = input.readLine();
//生成文件
FileOutputStream outfile = new FileOutputStream(filename);
outfile.write(intoFile.getBytes());
outfile.flush();
outfile.close();
//关闭连接
clientSocket.close();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -