TCP接收上传图片UploadPicServer

2019-10-07  本文已影响0人  勇者与王者
package Day32_Net;

import java.io.*;
import java.net.ServerSocket;
import java.net.Socket;

/**
 * @Author quzheng
 * @Date 2019/10/7 0:20
 * @Version 1.0
 *
 * 服务器获取客户端上传出图片字节流
 * 写到本地文件,完成后 发送消息 上传成功给客户端
 */
public class UploadPicServer {
    public static void main(String[] args) throws IOException {

        //创建 服务器端的 ServerSocket对象
        ServerSocket server = new ServerSocket(9999);

        // 通过调用ServerSocket对象的accept() 方法 获取到客户端 的socket对象
        Socket client = server.accept();

        String path = "D:\\360Downloads\\upload";
        //创建服务器本地的 输出流 即 写字节到本地

        //创建文件夹对象
        File f = new File(path);
        //如果文件夹不存在,则自动创建该目录
        if ( !f.exists()){
            f.mkdirs();
        }
        FileOutputStream fos = new FileOutputStream(path+"\\upload.png");



        // 获取到客户端的 输入流 即 服务器要接收的流
        InputStream in = client.getInputStream();
        byte[] bytes = new byte[1024];
        int len = 0;
        while ( ( len = in.read(bytes)) != -1  ){
            fos.write(bytes,0,len);
        }

        // 获取到 客户端的 输出流 来向客户端发送消息
        OutputStream out = client.getOutputStream();
        out.write("上传成功".getBytes());



        fos.close();
        client.close();


    }
}

上一篇 下一篇

猜你喜欢

热点阅读