java复制sheet_java-poi 复制Sheet到另一个excel的sheet中
时间: 2023-08-06 20:07:47 浏览: 1770
您好,以下是使用 Java POI 库将一个 Sheet 复制到另一个 Excel 文件的 Sheet 中的代码示例:
```java
import java.io.FileInputStream;
import java.io.FileOutputStream;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
public class CopySheetToAnotherExcel {
public static void main(String[] args) {
try {
// 打开源文件
FileInputStream sourceFile = new FileInputStream("source.xlsx");
Workbook sourceWorkbook = WorkbookFactory.create(sourceFile);
Sheet sourceSheet = sourceWorkbook.getSheetAt(0);
// 打开目标文件
FileInputStream targetFile = new FileInputStream("target.xlsx");
Workbook targetWorkbook = WorkbookFactory.create(targetFile);
Sheet targetSheet = targetWorkbook.createSheet("newSheet");
// 复制源 Sheet 到目标 Sheet
targetSheet = targetWorkbook.cloneSheet(0);
targetSheet.setSelected(false);
targetWorkbook.setSheetName(targetWorkbook.getSheetIndex(targetSheet), "newSheet");
// 保存目标文件
FileOutputStream outputStream = new FileOutputStream("target.xlsx");
targetWorkbook.write(outputStream);
outputStream.close();
System.out.println("Sheet copied successfully!");
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
在上面的示例中,我们打开源文件 `source.xlsx` 和目标文件 `target.xlsx`,然后将源文件的第一个 Sheet 复制到目标文件的一个新 Sheet 中,并将其保存到目标文件中。如果您需要复制不同的 Sheet,只需修改 `sourceWorkbook.getSheetAt(0)` 的下标即可。
希望这可以帮助到您!
阅读全文