当前位置: 首页 > 知识库问答 >
问题:

使用Selenium Apache POI Java webdriver在setCellValue()的数据表excel中未打印值

罗甫
2023-03-14

使用Selenium Apache POI Java webdriver无法在数据表excel中打印值。请帮助打印数据表excel中的值。

要求是通过工作表名称,行号,列号和文本打印在excel中。通过这段代码,文本不会在数据表excel中打印出来。

class ReadDataSheet:

public class ReadDataSheet {
public WebDriver dr;
public HSSFWorkbook wb;
public HSSFSheet ws;
public int rowCount;
public String className;
public String sheetName;
public String colName;
public String value;

public String setValue(String SheetName, String rowName, String columnHeader, String textToPrint) {

try {
FileInputStream file = new FileInputStream(new File("./DataSheet.xls"));

wb = new HSSFWorkbook(file);

ws = wb.getSheet(SheetName);
int rownumber = getRownumber(rowName, columnHeader);
int columnNumber = getColumnNumber(columnHeader);
Cell cell;
cell = ws.getRow(rownumber).createCell(columnNumber);
            cell.setCellValue(textToPrint);

} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

return value;


}

Class Login:
public class Login{
public ReadDataSheet rds = new ReadDataSheet();
public void printValue() throws Exception {
rds.setValue("data details","Test case 1","Page Title","Selenium")
}
}
Class TC_01:
public class TC_01 extends Login
{
                @Test
            public void page() throws Exception  
             {                                              
                Login login = new Login(remoteDriver);

                     login.printValue();

             }
}      

共有2个答案

濮阳驰
2023-03-14

错误似乎在 getRownumber(rowName, columnHeader); 方法中。此方法需要列标题作为参数有什么特殊原因吗?它应该只将 rowName 作为输入。您能否发布这两种方法(getRownumber和getColumnNumber)的代码以及上传数据表格式?

韦泳
2023-03-14

要将值写入Excel,您需要保存Excel工作表。在 末尾使用 folloing 代码段

setValue方法:

FileOutputStream fileOut = new FileOutputStream("poi-generated-file.xlsx");
workbook.write(fileOut);
fileOut.close();

// Closing the workbook
workbook.close();

如果不是您面临的问题,请分享更多详细信息。

 类似资料:
  • 我试图使用XSSFRow将数据从一个工作表转换到另一个工作表,下面是代码 计算公式后,书面表格中的数据将被替换为“#value”,而不是数字。我应该怎么做才能显示原始数据而不是“#值”

  • 下面的代码应该收集来自用户的数字输入,将其放入一个列表中,并对它们进行排序: 这段代码正在打印“无”,而不是打印我的排序列表。我少了哪一步?

  • 对于这件事,我将非常感激任何帮助。或者其他开源库使用PHP生成报告的任何建议

  • 假设我有一个包含3张工作表的工作簿,“工作表1”、“工作表2”和“工作表3”。现在我只想打印“第1页”,所以在VBA我用了 但宏仍然打印所有3个工作表。当我专门编写只打印1的代码时,发生了什么导致它打印所有3张纸? 我正在使用: 微软卓越卓越专业增强版 2010

  • 在我的项目中,客户需要使用POS打印机打印收据,这可以使用JAVA POS来完成。我在网上搜索没有任何有用的材料,但发现 1.javapos 2.jpos 可以有人请指导我应该进行JAVA POS或JPOS。 该应用程序基于Java Swing desktop而不是基于web。 真的坚持这一点,任何帮助都是非常有用的