This commit is contained in:
totalo 2020-11-11 21:59:38 +08:00
parent 17e91a6388
commit 89626a6563
2 changed files with 27 additions and 5 deletions

View File

@ -26,6 +26,7 @@ import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.util.CellRangeAddressList; import org.apache.poi.ss.util.CellRangeAddressList;
import org.apache.poi.xssf.streaming.SXSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFDataValidation; import org.apache.poi.xssf.usermodel.XSSFDataValidation;
import java.io.File; import java.io.File;
@ -268,6 +269,8 @@ public class ExcelWriter extends ExcelBase<ExcelWriter> {
* @since 4.0.12 * @since 4.0.12
*/ */
public ExcelWriter autoSizeColumn(int columnIndex) { public ExcelWriter autoSizeColumn(int columnIndex) {
SXSSFSheet sheet = (SXSSFSheet) this.sheet;
sheet.trackAllColumnsForAutoSizing();
this.sheet.autoSizeColumn(columnIndex); this.sheet.autoSizeColumn(columnIndex);
return this; return this;
} }

View File

@ -16,11 +16,7 @@ import org.apache.poi.ss.usermodel.IndexedColors;
import org.junit.Ignore; import org.junit.Ignore;
import org.junit.Test; import org.junit.Test;
import java.util.ArrayList; import java.util.*;
import java.util.Arrays;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
/** /**
* 写出Excel单元测试 * 写出Excel单元测试
@ -217,4 +213,27 @@ public class BigExcelWriteTest {
writer.write(data).flush(); writer.write(data).flush();
} }
} }
@Test
@Ignore
public void issue1210() {
// 通过工具类创建writer
String path = "e:/issue1210.xlsx";
FileUtil.del(path);
BigExcelWriter writer = ExcelUtil.getBigWriter(path);
writer.addHeaderAlias("id", "SN");
writer.addHeaderAlias("userName", "User Name");
List<Map<String, Object>> list = new ArrayList<>();
list.add(new HashMap<String, Object>() {{
put("id", 1);
put("userName", "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
}});
list.add(new HashMap<String, Object>() {{
put("id", 2);
put("userName", "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb");
}});
writer.write(list, true);
writer.autoSizeColumnAll();
writer.close();
}
} }