java使用ExcelWriter保存表格到本地
时间: 2024-01-17 09:03:46 浏览: 41
以下是使用ExcelWriter保存表格到本地的Java示例代码:
```java
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.write.metadata.WriteSheet;
import com.alibaba.excel.write.metadata.WriteTable;
import com.alibaba.excel.write.metadata.style.WriteCellStyle;
import com.alibaba.excel.write.style.HorizontalCellStyleStrategy;
public class ExcelWriterDemo {
public static void main(String[] args) throws IOException {
// 创建ExcelWriter对象
FileOutputStream outputStream = new FileOutputStream(new File("test.xlsx"));
ExcelWriter excelWriter = EasyExcel.write(outputStream).build();
// 设置表格样式
WriteCellStyle headWriteCellStyle = new WriteCellStyle();
headWriteCellStyle.setWrapped(true);
WriteCellStyle contentWriteCellStyle = new WriteCellStyle();
contentWriteCellStyle.setWrapped(true);
HorizontalCellStyleStrategy styleStrategy = new HorizontalCellStyleStrategy(headWriteCellStyle, contentWriteCellStyle);
// 准备数据
List<DemoData> data = new ArrayList<>();
for (int i = 0; i < 10; i++) {
DemoData demoData = new DemoData();
demoData.setString("字符串" + i);
demoData.setDate(new Date());
demoData.setDoubleData(0.56);
data.add(demoData);
}
// 写入数据
WriteSheet writeSheet = EasyExcel.writerSheet("测试Sheet").build();
WriteTable writeTable = EasyExcel.writerTable(0).head(DemoData.class).registerWriteHandler(styleStrategy).build();
excelWriter.write(data, writeSheet, writeTable);
// 关闭ExcelWriter对象
excelWriter.finish();
}
}
```
在上面的示例代码中,我们使用EasyExcel库提供的ExcelWriter对象将数据写入到Excel文件中,最后通过调用`finish()`方法关闭ExcelWriter对象即可完成保存操作。同时,我们还可以通过设置`HorizontalCellStyleStrategy`对象来自定义表格的样式。