“EasyExcel 编程式配置读、写哪些字段”的版本间的差异
跳到导航
跳到搜索
Jihongchang(讨论 | 贡献) (建立内容为“1”的新页面) |
Jihongchang(讨论 | 贡献) |
||
| 第1行: | 第1行: | ||
| − | + | ==== 写入时指定只写某些字段 ==== | |
| + | <syntaxhighlight lang="java"> | ||
| + | import com.alibaba.excel.EasyExcel; | ||
| + | import java.util.ArrayList; | ||
| + | import java.util.List; | ||
| + | |||
| + | public class EasyExcelWriteDynamicDemo { | ||
| + | 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"; | ||
| + | // 写入时只包含 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月26日 (一) 09:00的最新版本
写入时指定只写某些字段
import com.alibaba.excel.EasyExcel;
import java.util.ArrayList;
import java.util.List;
public class EasyExcelWriteDynamicDemo {
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";
// 写入时只包含 username 和 age 字段
EasyExcel.write(fileName, User.class)
.includeColumnFiledNames("username", "age") // 指定只写这些字段
.sheet("用户列表")
.doWrite(userList);
}
}
读取时指定只读某些字段
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
}
}
}
includeColumnFiledNames 是白名单(只包含这些字段),excludeColumnFiledNames 是黑名单(排除这些字段)。