我在页面上有一个表,我需要从表中的特定单元格中读取值。我想把这些值写到excel文件中。问题是for loop只循环一次,并且只为Excel中的第一个单元格写入值。我试过很多不同的循环,在谷歌上搜索,但都找不到答案。请帮帮忙。下面是我要编写到Excel的代码:
public static void setExcelFile(String Path, String SheetName) throws Exception {
try {
// Open the Excel file
FileInputStream ExcelFile = new FileInputStream(Path);
// Access the required test data sheet
ExcelWBook = new XSSFWorkbook(ExcelFile);
ExcelWSheet = ExcelWBook.getSheet(SheetName);
} catch (Exception e) {
throw (e);
}
}
这是我写入excel文件的地方
public static void setCellData(String Result, int RowNum, int ColNum) throws Exception {
try {
Row = ExcelWSheet.getRow(RowNum);
Cell = Row.getCell(ColNum, Row.RETURN_BLANK_AS_NULL);
if (Cell == null) {
Cell = Row.createCell(ColNum);
Cell.setCellValue(Result);
} else {
Cell.setCellValue(Result);
}
// Constant variables Test Data path and Test Data file name
FileOutputStream fileOut = new FileOutputStream(Constant.Path_TestData + Constant.File_TestData);
ExcelWBook.write(fileOut);
fileOut.flush();
fileOut.close();
} catch (Exception e) {
e.printStackTrace();
}
}
and here is my loop
//
ExcelUtils.setExcelFile(Constant.Path_TestData + Constant.File_TestData, "Item_Selection");
List<WebElement> li = driver.findElements(By.cssSelector("#offerVersionSkuListTable>table:nth-child(2)>tbody>tr>td#regularCost"));
for (int j = 0; j<li.size(); j++) {
String cellValue = li.get(j).getText();
List<String> valueList = new ArrayList<String>();
valueList.add(cellValue);
for (int m = 0; m<valueList.size(); m++) {
int temp = row;
ExcelUtils.setCellData(valueList.get(m), temp, Constant.Col_TblRegCost);
temp++;
}
}
循环成功执行并从表中正确打印出值,但我需要将这些值写入Excel。似乎在excel中写入第一个值后,for loop再次循环,但没有在excel中第二次写入任何内容。你能帮我找出原因吗?
为什么for循环只循环一次的解释是,您试图循环通过的列表只包含一个值。当for循环通过该值完成循环时,循环中断。就像列表将有五个值一样,循环将循环遍历这些值,然后中断。
我试图实现每秒循环一次的ScheduledExecutorService线程,但现在它只循环一次。 我的问题是如何设置它,使它周期性地循环,而不是一次迭代? 另外,如何将连接池传递给线程,以便每次迭代都可以查询数据库?任何帮助都非常感谢。
本文向大家介绍python3 循环读取excel文件并写入json操作,包括了python3 循环读取excel文件并写入json操作的使用技巧和注意事项,需要的朋友参考一下 文件内容: excel内容: 代码: 结果: 补充知识:Python mysql数据 读取时间参数 for循环写入Excel文件 最近在利用Python 实现自动化表报时,有个功能是mysql的业务时间是读取模板文件的时间参
在我的部分代码中,循环中有一个语句,它应该在每次迭代时都请求输入。然而,它只要求输入一次,当循环再次运行时不会再次要求输入,就好像已经输入了一些内容一样。这真的很烦人,因为似乎没有什么问题。
问题内容: 我已经使用tkinter编写了gui,我需要将2个音阶的值实时发送到arduino。我已经验证了arduino正在使用另一个草图发送值到arduino并接收到这些草图,我已经在以下代码中添加了我的python代码 我已经在tkinter mainloop的内部和外部移动了它,并且从gui获得了不同的结果,而gui只在关闭gui时才不加载到数据中。有人可以告诉我如何让gui运行,并且当我
嵌套for、while和if语句的时间复杂度相同吗?假设作为长度的数组给出。 上述声明的适用范围为O(n²)。 乍一看,上面的循环可以被认为是O(n),但最终我认为它也是O(n²)。 我没说错吧?
我对python中双for循环的使用感到困惑,这是我的代码: 输出如下: 它只对外循环的第一个值执行内循环,为什么会发生这种情况?我怎样才能让它在第一个和第二个变量的所有组合上循环?