easypoi 如何通过列的序号进行获取数据
时间: 2024-03-17 18:45:22 浏览: 94
php生成excel列序号代码实例
可以通过 EasyExcel 的 `read` 方法读取 Excel 文件,然后使用 `Sheet` 对象的 `getRow(int rowNum)` 方法获取指定行的数据,再使用 `Row` 对象的 `getCell(int cellNum)` 方法获取指定列的数据。
以下是一个通过列的序号获取数据的示例代码:
```java
// 导入 EasyExcel 相关的类
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.metadata.Sheet;
import com.alibaba.excel.metadata.Table;
import com.alibaba.excel.read.metadata.ReadSheet;
import com.alibaba.excel.read.metadata.ReadTable;
import com.alibaba.excel.read.metadata.holder.ReadSheetHolder;
import com.alibaba.excel.read.metadata.holder.ReadTableHolder;
import com.alibaba.excel.read.metadata.holder.ReadWorkbookHolder;
import com.alibaba.excel.read.metadata.holder.xls.XlsReadWorkbookHolder;
import com.alibaba.excel.read.metadata.holder.xlsx.XlsxReadWorkbookHolder;
// 读取 Excel 文件
String fileName = "/path/to/file.xlsx";
Sheet sheet = new Sheet(1, 1);
List<Object> data = EasyExcel.read(fileName).sheet(sheet).doReadSync();
// 获取指定列的数据
int columnNum = 2; // 列的序号,从 1 开始计数
List<Object> columnData = new ArrayList<>();
for (Object row : data) {
List<Object> rowData = (List<Object>) row;
Object cellData = rowData.get(columnNum - 1); // 列的序号需要减 1
columnData.add(cellData);
}
```
以上示例代码中,通过 `EasyExcel` 的 `read` 方法读取 Excel 文件,使用 `Sheet` 对象指定读取第 1 个 sheet,再通过 `doReadSync` 方法同步读取数据。之后,使用循环遍历每一行数据,使用 `List` 的 `get` 方法获取指定列的数据,并将其添加到 `columnData` 列表中。需要注意的是,列的序号从 1 开始计数,而 `List` 的索引从 0 开始计数,因此需要将列的序号减 1 才能正确获取列的数据。
阅读全文