java 实现合并单元格
时间: 2023-08-02 16:05:40 浏览: 96
在 Java 中,可以使用 Apache POI 库来实现 Excel 文件的读写操作,包括合并单元格的操作。下面是一个简单的示例代码,演示了如何使用 Apache POI 合并单元格:
```java
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import org.apache.poi.ss.usermodel.CellRangeAddress;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.usermodel.VerticalAlignment;
import org.apache.poi.xssf.usermodel.XSSFCellStyle;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class MergeCellsExample {
public static void main(String[] args) throws IOException {
XSSFWorkbook workbook = new XSSFWorkbook();
XSSFSheet sheet = workbook.createSheet("Sheet1");
// 创建单元格样式
XSSFCellStyle cellStyle = workbook.createCellStyle();
cellStyle.setAlignment(HorizontalAlignment.CENTER);
cellStyle.setVerticalAlignment(VerticalAlignment.CENTER);
// 合并单元格
CellRangeAddress mergedRegion = new CellRangeAddress(0, 2, 0, 4);
sheet.addMergedRegion(mergedRegion);
// 设置合并后的单元格样式
for (int i = mergedRegion.getFirstRow(); i <= mergedRegion.getLastRow(); i++) {
for (int j = mergedRegion.getFirstColumn(); j <= mergedRegion.getLastColumn(); j++) {
sheet.getRow(i).getCell(j).setCellStyle(cellStyle);
}
}
// 写入文件
File file = new File("example.xlsx");
FileOutputStream outputStream = new FileOutputStream(file);
workbook.write(outputStream);
outputStream.close();
System.out.println("Excel文件已生成:" + file.getAbsolutePath());
}
}
```
此示例将创建一个名为 "Sheet1" 的工作表,并在第一行到第三行、第一列到第五列之间合并单元格。合并后的单元格将使用居中对齐的样式进行格式化,并写入名为 "example.xlsx" 的 Excel 文件中。
阅读全文