CsvWriter增加重载writeBeans方法,支持可选bean字段

This commit is contained in:
Looly 2024-05-23 15:13:39 +08:00
parent a2b469dc0f
commit 3daeac4631

View File

@ -256,15 +256,16 @@ public final class CsvWriter implements Closeable, Flushable, Serializable {
* 将一个Bean集合写出到Writer并自动生成表头
*
* @param beans Bean集合
* @param properties 可选属性列表空表示全部属性
* @return this
*/
@SuppressWarnings("resource")
public CsvWriter writeBeans(final Iterable<?> beans) {
public CsvWriter writeBeans(final Iterable<?> beans, final String... properties) {
if (CollUtil.isNotEmpty(beans)) {
boolean isFirst = true;
Map<String, Object> map;
for (final Object bean : beans) {
map = BeanUtil.beanToMap(bean);
map = BeanUtil.beanToMap(bean, properties);
if (isFirst) {
writeHeaderLine(map.keySet().toArray(new String[0]));
isFirst = false;