[alibaba/easyexcel]excel导入可以限制单元格字段长度吗

2024-05-24 763 views
5

package com.alibaba.easyexcel.test.demo.read;

import java.util.Date;

import lombok.Data;

/**

  • 基础数据类.这里的排序和excel里面的排序一致
  • @author Jiaju Zhuang / @Data public class ExceptionDemoData { /

    • 用日期去接字符串 肯定报错 */ private Date date;

    /**

    • 可以限制长度吗 */ private String test; }

回答

7

Listener中判断一下就可以了

5

请问有demo吗

7
public class DemoDataListener extends AnalysisEventListener<DemoData> {
    private static final Logger LOGGER = LoggerFactory.getLogger(DemoDataListener.class);

    /**
     * 这个每一条数据解析都会来调用
     *
     * @param data
     *            one row value. Is is same as {@link AnalysisContext#readRowHolder()}
     * @param context
     */
    @Override
    public void invoke(DemoData data, AnalysisContext context) {
        LOGGER.info("解析到一条数据:{}", JSON.toJSONString(data));
        Assert.hasText(data.getString(), "string不能为空!");
        Assert.isTrue(data.getString().length() < 100 , "string长度不能超过100!");
    }

    /**
     * 所有数据解析完成了 都会来调用
     *
     * @param context
     */
    @Override
    public void doAfterAllAnalysed(AnalysisContext context) {
        // 这里也要保存数据,确保最后遗留的数据也存储到数据库
        LOGGER.info("所有数据解析完成!");
    }
}