fuint-application/application-service/src/main/java/com/fuint/application/util/XlsUtil.java

(开头部分) 6KB

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

package com.fuint.application.util;

import com.fuint.exception.BusinessCheckException;
import org.apache.commons.codec.binary.Base64;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import java.text.DecimalFormat;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.List;

/**
 * Excel表格工具类
 * Created by FSQ
 * Contact wx fsq_better
 * Site https://www.fuint.cn
 */
public class XlsUtil {

    private static final Logger logger = LoggerFactory.getLogger(XlsUtil.class);

    public static void setXlsHeader(HttpServletRequest request, HttpServletResponse response, String fileName) {
        response.reset();
        response.setHeader("Expires", "0");
        response.setHeader("Pragma", "public");
        response.setHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0");
        response.setHeader("Cache-Control", "public");
        response.setContentType("application/vnd.ms-excel;charset=utf-8");
        try {
            String agent = request.getHeader("USER-AGENT");
            String downloadFileName = java.net.URLEncoder.encode(fileName, "UTF-8");
            if (agent != null && agent.toLowerCase().indexOf("firefox") > 0) {
                downloadFileName = "=?UTF-8?B?" + (new String(Base64.encodeBase64(fileName.getBytes("UTF-8")))) + "?=";
            }
            response.addHeader("Content-Disposition", "attachment; filename=" + downloadFileName);
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
    }

    /**
     * 读取Excel数据内容
     *
     * @param is           文件流
     * @param isExcel2003  是否是2003的excel
     * @param firstRowNum  开始读取的行号(从0开始)为NULL时从第一行开始
     * @param lastRowNum   结束读取的行号(从0开始)为NULL时最后一行结束
     * @param firstCellNum 结束读取的列号(从0开始)为NULL时第一列开始
后面还有 123 行代码,购买后查看完整代码

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

AI 解读 AI

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

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