用java代码生成excel模板一模一样的表格
时间: 2023-07-27 21:23:28 浏览: 105
要用Java代码生成与Excel模板一模一样的表格,您可以使用 POI 库来创建 Excel 文件,然后按照模板的格式设置表格的内容、样式和格式。
下面是一个简单的示例,演示了如何使用 POI 库创建一个包含表头和数据的 Excel 文件:
```java
public static void main(String[] args) throws IOException {
// 创建 Excel 工作簿
Workbook workbook = new XSSFWorkbook();
// 创建 Excel 工作表
Sheet sheet = workbook.createSheet("Sheet1");
// 设置表头
Row headerRow = sheet.createRow(0);
String[] headers = {"Name", "Age", "Gender", "Address"};
for (int i = 0; i < headers.length; i++) {
Cell cell = headerRow.createCell(i);
cell.setCellValue(headers[i]);
}
// 设置数据
List<Person> persons = Arrays.asList(
new Person("Alice", 25, "F", "123 Main St."),
new Person("Bob", 30, "M", "456 High St."),
new Person("Charlie", 35, "M", "789 Pleasant St.")
);
int rowNum = 1;
for (Person person : persons) {
Row row = sheet.createRow(rowNum++);
row.createCell(0).setCellValue(person.getName());
row.createCell(1).setCellValue(person.getAge());
row.createCell(2).setCellValue(person.getGender());
row.createCell(3).setCellValue(person.getAddress());
}
// 保存 Excel 文件
FileOutputStream fileOut = new FileOutputStream("output.xlsx");
workbook.write(fileOut);
fileOut.close();
workbook.close();
}
static class Person {
private String name;
private int age;
private String gender;
private String address;
public Person(String name, int age, String gender, String address) {
this.name = name;
this.age = age;
this.gender = gender;
this.address = address;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
public String getGender() {
return gender;
}
public String getAddress() {
return address;
}
}
```
在这个示例中,我们首先创建了一个新的 Excel 工作簿和工作表。然后,我们设置了表头和数据,将数据填充到工作表中,并保存 Excel 文件。
需要注意的是,在设置表头和数据时,我们需要根据 Excel 模板中的格式来设置单元格的样式和格式,以确保生成的 Excel 文件与模板一致。如果您有模板文件,可以通过读取模板文件来获取表头和数据区域的位置和格式。
阅读全文