java-poi 复制Sheet到另一个excel的sheet中
时间: 2023-08-07 12:04:05 浏览: 718
poi复制excel的sheet页
可以使用 Java 的 Apache POI 库来实现将一个 Excel 文件中的 Sheet 复制到另一个 Excel 文件的 Sheet 中。以下是示例代码:
```java
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
public class CopySheetExample {
public static void main(String[] args) throws IOException {
// 读取源文件
File srcFile = new File("source.xls");
FileInputStream srcStream = new FileInputStream(srcFile);
HSSFWorkbook srcWorkbook = new HSSFWorkbook(srcStream);
HSSFSheet srcSheet = srcWorkbook.getSheetAt(0);
// 创建目标文件
File destFile = new File("destination.xls");
FileOutputStream destStream = new FileOutputStream(destFile);
HSSFWorkbook destWorkbook = new HSSFWorkbook();
HSSFSheet destSheet = destWorkbook.createSheet("Copied Sheet");
// 复制源 Sheet 到目标 Sheet
int rowCount = srcSheet.getLastRowNum();
for (int i = 0; i <= rowCount; i++) {
HSSFRow srcRow = srcSheet.getRow(i);
HSSFRow destRow = destSheet.createRow(i);
int cellCount = srcRow.getLastCellNum();
for (int j = 0; j < cellCount; j++) {
destRow.createCell(j).setCellValue(srcRow.getCell(j).getStringCellValue());
}
}
// 保存目标文件
destWorkbook.write(destStream);
// 关闭流
destStream.close();
srcStream.close();
}
}
```
在上面的示例中,我们首先读取源文件 `source.xls` 中的第一个 Sheet,然后创建目标文件 `destination.xls`,并在其中创建一个名为 `Copied Sheet` 的 Sheet。接着,我们遍历源 Sheet 中的每一行和每一个单元格,并将其复制到目标 Sheet 中。最后,我们将目标文件保存并关闭流。
阅读全文