[alibaba/easyexcel]请问如何跳出处理类呢?

2024-06-20 317 views
1

异常代码

/**
 * 自定义账单导入,映射标题头的监听器
 */
public class ZdyBillTitleHeadListener extends AnalysisEventListener {

    @Override
    public void invoke(Object object, AnalysisContext context) {
        //比如说 我有一个1w条的excel,想只处理前10条,就跳出这个监听。
    }

    @Override
    public void doAfterAllAnalysed(AnalysisContext context) {

    }
}

异常提示 我现在的做法是 当是第十行的时候就return,但是我感觉效率不好,因为还是要进这个方法1w次。 建议描述 如何做才能直接跳出呢?????

回答

3

实现hasNext 方法

6

实现hasNext 方法

您好,请问实现那个类的hasNext方法?

8

listener

0

listener

这个类没有这个方法啊?

public abstract class AnalysisEventListener<T> {
    public AnalysisEventListener() {
    }

    public abstract void invoke(T var1, AnalysisContext var2);

    public abstract void doAfterAllAnalysed(AnalysisContext var1);
}

我的版本是

<dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>easyexcel</artifactId>
            <version>1.1.2-beta5</version>
 </dependency>

是因为版本问题么?

2

用最新的2.0.0-beta6

8

非常感谢,确实2.0.0-beta6新版有这个方法,但是引入之后发现改动实在太大了,以前的方法都不能用了,而且看新版的demo,连如何获取sheet数量的方法都没找到,给的例子中读多sheet只是写死的0,1,2。太不好搞了,如果不用新版的,如何才能跳出监听类的方法呢???

5

可以参考demo,改动其实很小。sheet是可选的,都有相应方法。建议用新版。