java网络编程_文件上传

服务端

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
public class FileUploadServer {
public static void main(String[] args) throws IOException {
ServerSocket server = new ServerSocket(8888);
Socket socket = server.accept();
InputStream is = socket.getInputStream();
// 文件夹是否存在,不存在就创建
File file = new File("G:\\test\\demo\\test\\text\\tt\\upload");
if(!file.exists()){
file.mkdirs();
}
// 创建一个服务器端的输出流对象
FileOutputStream fos = new FileOutputStream(file+"\\2.png");
int len = 0;
byte[] bytes = new byte[1024];
while((len = is.read(bytes))!= -1){
System.out.println(len);
fos.write(bytes,0,len);
}
fos.close();

OutputStream os = socket.getOutputStream();
os.write("上传成功".getBytes());

socket.close();
server.close();
}
}

客户端

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
public class FileUploadClient {
public static void main(String[] args) throws IOException {
FileInputStream fis = new FileInputStream("G:\\test\\demo\\test\\text\\tt\\新建文件夹\\timg.jpg");

Socket socket = new Socket("127.0.0.1",8888);
OutputStream os = socket.getOutputStream();
int len = 0;
byte[] bytes = new byte[1024];
while((len = fis.read(bytes))!=-1){
os.write(bytes,0,len);
}
socket.shutdownOutput();

InputStream is = socket.getInputStream();
while((len = is.read(bytes))!=-1){
System.out.println(new String(bytes,0,len));
}

fis.close();
socket.close();
}
}

测试结果


java网络编程_文件上传
https://blog.wangxk.cc/2020/10/02/java网络编程-文件上传/
作者
Mike
发布于
2020年10月2日
许可协议