java xls另存为xlsx
时间: 2023-08-05 07:59:00 浏览: 121
在Java中将XLS文件另存为XLSX格式可以使用Apache POI库。以下是一个示例代码:
```java
import org.apache.poi.ss.usermodel.*;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class XlsToXlsxConverter {
public static void main(String[] args) {
String inputFilePath = "input.xls";
String outputFilePath = "output.xlsx";
try {
FileInputStream fis = new FileInputStream(inputFilePath);
Workbook workbook = WorkbookFactory.create(fis);
// 创建Xlsx格式的工作簿
Workbook xlsxWorkbook = WorkbookFactory.create(true);
// 遍历旧工作簿的每个工作表
for (int i = 0; i < workbook.getNumberOfSheets(); i++) {
Sheet sheet = workbook.getSheetAt(i);
Sheet xlsxSheet = xlsxWorkbook.createSheet(sheet.getSheetName());
// 复制旧工作表的每一行
for (Row row : sheet) {
Row xlsxRow = xlsxSheet.createRow(row.getRowNum());
// 复制旧行的每个单元格
for (Cell cell : row) {
Cell xlsxCell = xlsxRow.createCell(cell.getColumnIndex(), cell.getCellType());
xlsxCell.setCellValue(cell.getStringCellValue());
}
}
}
// 保存新工作簿为Xlsx文件
FileOutputStream fos = new FileOutputStream(outputFilePath);
xlsxWorkbook.write(fos);
System.out.println("Xls文件已成功另存为Xlsx格式!");
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
在上面的示例代码中,将`input.xls`文件另存为`output.xlsx`文件。你需要将`input.xls`替换为你要转换的XLS文件的路径,将`output.xlsx`替换为你想要保存的XLSX文件的路径。
请确保在运行代码之前添加Apache POI库的依赖。可以通过在`pom.xml`文件中添加以下依赖来实现:
```xml
<dependencies>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>4.1.2</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>4.1.2</version>
</dependency>
</dependencies>
```
这是一个将XLS文件另存为XLSX格式的基本示例。你可以根据自己的需求进行更改和扩展。
阅读全文