本章主要模拟终端设备通过事先制定的协议向服务端请求文件上传、文件下载的操作。
示例代码:
1.客户端分段读取文件发送至服务端
private static void input(String path) {// 时间戳,唯一ID标记long id = System.currentTimeMillis();File file = new File(path);long length = file.length(); // 文件大小int limit = 5 * 1024 * 1024; // 分段大小int total = (int) Math.ceil(((double) length / limit)); // 分段总数// 读取文件try (FileInputStream fis = new FileInputStream(file)) {byte[] bytes = new byte[limit];for (int i = 0; i < total; i++) {long offset = ((long) i * limit); // 当前分段长度下标位if ((length - offset) < limit) {limit = (int) (length - offset);bytes = new byte[limit];}while ((limit = fis.read(bytes)) != -1) {if (limit == bytes.length) {break;}