“EasyExcel”的版本间的差异

来自姬鸿昌的知识库
跳到导航 跳到搜索
 
(未显示同一用户的6个中间版本)
第1行: 第1行:
[[EasyExcel 不支持 iId 这样的字段]]
+
坑:[[EasyExcel 不支持 iId 这样的字段]]
  
=== 编程式配置读、写哪些字段 ===
+
坑:[[EasyExcel 直接写 Long 到 Excel 丢精度]]
  
==== 写入时指定只写某些字段 ====
+
[[EasyExcel 编程式配置读、写哪些字段]]
<syntaxhighlight lang="java">
 
import com.alibaba.excel.EasyExcel;
 
import java.util.ArrayList;
 
import java.util.List;
 
  
public class EasyExcelWriteDynamicDemo {
+
[[EasyExcel 追加写入]]
    public static void main(String[] args) {
 
        List<User> userList = new ArrayList<>();
 
        User user1 = new User();
 
        user1.setId(1L);
 
        user1.setUsername("张三");
 
        user1.setPassword("123456");
 
        user1.setAge(20);
 
        userList.add(user1);
 
  
        String fileName = "D:/user_list_dynamic.xlsx";
+
doRead doReadSync,doRead 可以分页读大文件,doReadSync 一次性读入所有数据
        // 写入时只包含 username age 字段
 
        EasyExcel.write(fileName, User.class)
 
                .includeColumnFiledNames("username", "age") // 指定只写这些字段
 
                .sheet("用户列表")
 
                .doWrite(userList);
 
    }
 
}
 
</syntaxhighlight>
 
 
 
==== 读取时指定只读某些字段 ====
 
<syntaxhighlight lang="java">
 
import com.alibaba.excel.EasyExcel;
 
import java.util.List;
 
 
 
public class EasyExcelReadDynamicDemo {
 
    public static void main(String[] args) {
 
        String fileName = "D:/user_list_dynamic.xlsx";
 
        // 读取时只包含 username 字段
 
        List<User> userList = EasyExcel.read(fileName, User.class)
 
                .includeColumnFiledNames("username") // 指定只读这些字段
 
                .sheet()
 
                .doReadSync();
 
       
 
        for (User user : userList) {
 
            System.out.println(user); // 只有username有值,其他字段为null
 
        }
 
    }
 
}
 
</syntaxhighlight><code>includeColumnFiledNames</code> 是白名单(只包含这些字段),<code>excludeColumnFiledNames</code> 是黑名单(排除这些字段)。
 

2026年1月27日 (二) 13:03的最新版本

坑:EasyExcel 不支持 iId 这样的字段

坑:EasyExcel 直接写 Long 到 Excel 丢精度

EasyExcel 编程式配置读、写哪些字段

EasyExcel 追加写入

doRead 和 doReadSync,doRead 可以分页读大文件,doReadSync 一次性读入所有数据