src/main/java/com/zhazhapan/efo/service/impl/FileManagerServiceImpl.java

(开头部分) 8KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

package com.zhazhapan.efo.service.impl;

import cn.hutool.core.util.ZipUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.zhazhapan.efo.modules.constant.DefaultValues;
import com.zhazhapan.efo.service.IFileManagerService;
import com.zhazhapan.modules.constant.ValueConsts;
import com.zhazhapan.util.Checker;
import com.zhazhapan.util.FileExecutor;
import com.zhazhapan.util.Formatter;
import org.apache.log4j.Logger;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;
import javax.swing.filechooser.FileSystemView;
import java.io.File;
import java.io.IOException;
import java.util.Date;

/**
 * @author pantao
 * @since 2018/1/29
 */
@Service
public class FileManagerServiceImpl implements IFileManagerService {

    private static Logger logger = Logger.getLogger(FileManagerServiceImpl.class);

    @Override
    public void multiDownload(HttpServletResponse response, String[] items, String destFile) throws IOException {
        File zip = ZipUtil.zip(new File(ValueConsts.USER_DESKTOP + File.separator + destFile), ValueConsts.FALSE,
                FileExecutor.getFiles(items));
        if (zip.exists()) {
            response.getOutputStream().write(FileExecutor.readFileToByteArray(zip));
            FileExecutor.deleteFile(zip);
        }
    }

    @Override
    public JSONObject upload(String destination, MultipartFile... files) {
        System.out.println(files.length);
        if (Checker.isNotEmpty(files)) {
            if (Checker.isWindows() && destination.length() < ValueConsts.TWO_INT) {
                destination = "C:";
            }
            for (MultipartFile file : files) {
                if (Checker.isNotNull(file) && !file.isEmpty()) {
                    try {
                        file.transferTo(new File(destination + File.separator + file.getOriginalFilename()));
                    } catch (IOException e) {
                        logger.error(e.getMessage());
                        return getBasicResponse(ValueConsts.FALSE);
                    }
                }
            }
        }
        return getBasicResponse(ValueConsts.TRUE);
    }
后面还有 176 行代码,购买后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读 AI

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。