java 按照excel模板导出 workbook
时间: 2023-09-02 16:02:00 浏览: 147
java导出excel模板
要按照Excel模板导出Workbook,可以使用Java中的Apache POI库来操作Excel文件。下面是一个简单的实例:
```java
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
public class ExcelExport {
public static void main(String[] args) {
String templateFilePath = "template.xlsx";
String outputFilePath = "output.xlsx";
try {
FileInputStream templateFile = new FileInputStream(templateFilePath);
Workbook workbook = new XSSFWorkbook(templateFile);
Sheet sheet = workbook.getSheetAt(0);
// 假设模板中有一个名为data的占位符,需要替换为实际的数据
Map<String, String> data = new HashMap<>();
data.put("name", "John Doe");
data.put("age", "25");
Row dataRow = sheet.getRow(1);
Cell nameCell = dataRow.getCell(0);
Cell ageCell = dataRow.getCell(1);
// 替换占位符为实际的数据
nameCell.setCellValue(data.get("name"));
ageCell.setCellValue(data.get("age"));
// 输出导出后的工作簿
FileOutputStream outputFile = new FileOutputStream(outputFilePath);
workbook.write(outputFile);
templateFile.close();
outputFile.close();
workbook.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
这里使用了Apache POI库中的`Workbook`和`Sheet`等类,通过`Workbook`来打开模板文件,然后获取模板中指定的Sheet,接着我们可以使用`Row`和`Cell`来获取和设置单元格的内容。在替换占位符的时候,可以通过获取到的Cell对象进行设置。
最后,导出的Workbook可以通过`write`方法将其写入到指定的文件中。注意在使用完毕后,要关闭文件流和工作簿对象以释放资源。
阅读全文