如何从excel中获得匹配某些值的单元格数据?

时间:2019-04-08 11:30:03

标签: java selenium apache-poi

因此,如您在下面的屏幕快照中所见,我想在运行模式=否的数组中获取所有测试用例ID存储区

我该怎么做? 如何遍历工作表并存储值?

有没有解决方案? 这是我的代码:

List<String> s = new ArrayList<>();
private static int findRow(HSSFSheet sheet, String cellContent) {
    for (Row row : sheet) {
        for (Cell cell : row) {
            if (cell.getCellType() == Cell.CELL_TYPE_STRING) {
                if (cell.getRichStringCellValue().getString().trim().equals("No")) {
                    //not able to developed further need to store the value of the first column if matched
                }
            }
        }
    }

enter image description here

2 个答案:

答案 0 :(得分:3)

不要检查连续的每个单元格。 而是检查row[2](运行模式),如果满足条件,则获取值为row[1](描述)。

您不需要跳过第一行,因为它不满足您的条件。

答案 1 :(得分:2)

您必须跳过第一行。不需要遍历该行的每个单元格。使用getCell(2)检查运行模式。如果满足该条件,请使用getCell(0)读取测试用例ID。

如果将来需要此代码,请不要像我上面提到的那样对列号进行硬编码。阅读第一行(标题)以确定“运行模式”列和“测试用例ID”列,然后按照上面的逻辑进行操作。将文本“运行模式”放入一些application.properties中,稍后可以对其进行配置。