【发布时间】:2017-01-19 19:09:16
【问题描述】:
我想从第一行读取数据并执行操作,然后写入结果,然后读取第二行,直到 Excel 文件中没有更多数据为止。
我的问题:
- 为什么迭代器不起作用?
- 为什么(Selenium 的)
driver.findElement不做它应该做的事情?
主程序
@Test
public void test() throws Exception {
String sPath = "default.xlsx";
DataHelper.setExcelFile(sPath, "sheet1");
XSSFRow row;
XSSFCell cell;
boolean flag = true;
XSSFSheet sheet = ExcelWSheet;
Iterator rows = sheet.rowIterator();
while (rows.hasNext()) {
row = (XSSFRow) rows.next();
Iterator cells = row.cellIterator();
List <String> obj = new ArrayList<String>();
while (cells.hasNext()) {
cell = (XSSFCell) cells.next();
String cellobj = cell.getStringCellValue();
if(flag)
{
driver.findElement(By.id("text")).sendKeys(cell);
driver.findElement(By.id("text")).click();
driver.findElement(By.id("text")).clear;
}
}
}
}
DataHelper.java
public class DataHelper {
public static XSSFSheet ExcelWSheet;
private static XSSFWorkbook ExcelWBook;
private static XSSFCell cell;
private static String path;
public static void setExcelFile(String path, String SheetName) throws Exception {
path = path;
FileInputStream ExcelFile = new FileInputStream(path);
ExcelWBook = new XSSFWorkbook(ExcelFile);
ExcelWSheet = ExcelWBook.getSheet(SheetName);
}
}
Excel 数据
邮箱、密码
你好,123
你好1,123
【问题讨论】:
-
这里似乎有什么问题?你调试过你的代码吗?文件是否正确读取?代码是否进入了两个while循环?
-
请阅读How to Ask。请提供您尝试过的代码和执行结果,包括任何错误信息等。同时提供Excel工作表的内容。
标签: javascript java selenium