poi导出excel 损坏_easypoi导出Excel遇到的坑

当对象属性名称第二个字母为大写时会导致导出对应属性数据为空情况。

举例:public String aBTest;

导致对应属性导出为空的原因:

easypoi在处理属性时判断不够全面,使用时需要注意

判断逻辑:

(

name.length() == 1 || name.length() > 1 && !Character.isUpperCase(name.charAt(1))

)

出现问题的具体方法见下面代码:

PoiReflectorUtil.class

private static String methodToProperty(String name) {

if (name.startsWith("is")) {

name = name.substring(2);

} else {

if (!name.startsWith("get") && !name.startsWith("set")) {

throw new RuntimeException("Error parsing property name ‘" + name + "‘. Didn‘t start with ‘is‘, ‘get‘ or ‘set‘.");

}

name = name.substring(3);

}

if (name.length() == 1 || name.length() > 1 && !Character.isUpperCase(name.charAt(1))) {

name = name.substring(0, 1).toLowerCase(Locale.ENGLISH) + name.substring(1);

}

return name;

}

原文:https://www.cnblogs.com/rgyfred/p/12195426.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值