java中excel第三列转行
时间: 2023-07-25 19:40:01 浏览: 170
excel列转行的宏
5星 · 资源好评率100%
Java中可以使用Apache POI库来处理Excel文件。下面是一个示例代码,演示如何将Excel文件中第三列数据转换为行:
```java
// 加载Excel文件
File file = new File("path/to/excel/file.xlsx");
Workbook workbook = WorkbookFactory.create(file);
// 获取第一个Sheet
Sheet sheet = workbook.getSheetAt(0);
// 获取第三列数据
List<String> columnData = new ArrayList<>();
for (Row row : sheet) {
Cell cell = row.getCell(2); // 第三列
if (cell != null) {
String value = cell.getStringCellValue();
columnData.add(value);
}
}
// 将第三列数据转换为行
List<List<String>> rowData = new ArrayList<>();
for (String value : columnData) {
List<String> row = new ArrayList<>();
row.add(value);
rowData.add(row);
}
// 将数据写入新的Excel文件
Workbook newWorkbook = new XSSFWorkbook();
Sheet newSheet = newWorkbook.createSheet();
for (int i = 0; i < rowData.size(); i++) {
Row row = newSheet.createRow(i);
List<String> rowValues = rowData.get(i);
for (int j = 0; j < rowValues.size(); j++) {
Cell cell = row.createCell(j);
cell.setCellValue(rowValues.get(j));
}
}
// 保存新的Excel文件
File newFile = new File("path/to/new/excel/file.xlsx");
FileOutputStream outputStream = new FileOutputStream(newFile);
newWorkbook.write(outputStream);
outputStream.close();
```
这个示例代码首先加载Excel文件,然后获取第一个Sheet。接着,它遍历每一行并获取第三列数据,将这些数据存储在一个List中。然后,它通过将每个值存储在单独的List中来将第三列数据转换为行。最后,它将新的行数据写入新的Excel文件。
阅读全文