try {
// 创建一个文件夹
File file = new File(fileStr);
file.mkdirs();
//多个图片下载地址
for (int i = 0; i < village.size(); i++) {
//new一个URL对象
URL url = new URL(village.get(i).getFilePath());
//打开链接
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
//设置请求方式为"GET"
conn.setRequestMethod("GET");
//超时响应时间为5秒
conn.setConnectTimeout(10 * 1000);
//通过输入流获取图片数据
InputStream inStream = conn.getInputStream();
//得到图片的二进制数据,以二进制封装得到数据,具有通用性
byte[] data = readInputStream(inStream);
//new一个文件对象用来保存图片,默认保存当前工程根目录
File imageFile = new File(fileStr + "/" + village.get(i).getId() + ".png");
//创建输出流
FileOutputStream outStream = new FileOutputStream(imageFile);
//写入数据
outStream.write(data);
//关闭输出流
outStream.close();
}
// 压缩法
FileOutputStream fos1 = new FileOutputStream(new File(zipFileStr));
toZip1(fileStr, fos1, false);
//
jsonArray = JSONArray.parseArray(filePost("http://122.224.233.**:9881/tools/repeat_check", zipFileStr));
if (jsonArray != null) {
// 删除文件和压缩文件
FileUtil.delFolder(fileStr);
FileUtil.delFolder(zipFileStr);
FileUtil.delFolder(path + sdf.format(date) + sdf1.format(date) + sdf2.format(date));
}
if (jsonArray == null || jsonArray.size() == 0) {
continue;
}
saveAbnormalRecord(jsonArray);
} catch (MalformedURLException e) {
e.printStackTrace();
}
下面我会附上对应的压缩方法,这只是针对 base64 的下载和图片压缩,文件压缩也适用于以下方法
/**
* POST请求数据
* wangl
*
* **/
public static String filePost(String url, String filePath){
File file = new File(filePath);
ResponseBodyVo restResponse = new ResponseBodyVo();
try {
if (!file.exists() || !file.isFile()) {
throw new IOException("文件不存在"