【问题标题】:Selenium/Java - Writing Data to ExcelSelenium/Java - 将数据写入 Excel
【发布时间】:2019-12-07 00:46:02
【问题描述】:

我是 Selenium 的新手,我正在尝试编写代码将数据写入 excel。此代码正在运行。但是,它只写在第二行。当我将“String FieldName1 更改为 3”的值时,它不会写入下一行。我更改了 header = spreadsheet.createRow(0); 的值到(1)它确实写到了下一行,但是每次我运行测试时都这样做很痛苦。我需要的是在每次运行时将数据写入下一行并将“String FieldName1 更改为 3”的值。提前致谢!

硒 > Java > Maven

公共类 testBed2 {

@Test   
public void writeExcel() throws IOException{
FileInputStream fis = new FileInputStream("C:\\Users\\ExportExcel.xlsx");
XSSFWorkbook workbook = new XSSFWorkbook();
XSSFSheet spreadsheet = workbook.createSheet( "TestData");
XSSFRow header;
header = spreadsheet.createRow(0);
header.createCell(0).setCellValue("FieldName1");
header.createCell(1).setCellValue("FieldName2");
header.createCell(2).setCellValue("FieldName3");
int rowNumber = 1;
            Row row = spreadsheet.getRow(0);

            //Column Count
            int colCount = row.getLastCellNum();
            for (int j = 0; j < colCount; j++) {
                System.out.println("Col Count : " + j);

            //Row Count
            int rowCount = spreadsheet.getLastRowNum() + 1; 
            for (int i = 0; i < rowCount; i++) {

                XSSFRow currentRow = spreadsheet.createRow(rowNumber);
                System.out.println("Row Count : " + i);

                String FieldName1 = "NAME1";
                String FieldName2 = "NAME2";
                String FieldName3 = "NAME3";

                currentRow.createCell(0).setCellValue(FieldName1);
                currentRow.createCell(1).setCellValue(FieldName2);  
                currentRow.createCell(2).setCellValue(FieldName3);

                FileOutputStream fos = new FileOutputStream("C:\\Users\\ExportExcel.xlsx");
                workbook.write(fos);
                fos.close();



        }

    }

} }

【问题讨论】:

  • 您需要花一些时间来学习如何调试自己的代码,否则您将永远要求其他人帮助您调试。查看您使用的 IDE 文档,了解如何添加断点并阅读一些调试指南。一旦您掌握了调试的基础知识,它将为您节省大量的时间。

标签: java excel selenium


【解决方案1】:

我认为您的代码只写第二行的原因是,您的关闭代码位于 For 循环中。如果您在 {} 末尾编写关闭代码,您将得到正确答案。 :)

【讨论】:

  • 您好 Grafeen,感谢您的回复。回到办公室后,我会尽力满足您的建议。
  • 请尝试并告诉我。
  • 我昨天试过了,还是不行。对于代码的每次运行,它都不会写入下一行。感谢您的跟进。
猜你喜欢
  • 2016-03-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-21
  • 2020-09-15
  • 1970-01-01
相关资源
最近更新 更多