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

如何使用Selenium java创建一个新工作表并在现有Excel中写入一些数据

高宏峻
2023-03-14

我尝试了下面的代码

但它会覆盖现有工作表。

File f= new File(System.getProperty("user.dir")+"\\src\\test\\resources\\Exceldata.xls");   

    HSSFWorkbook workbook = new HSSFWorkbook();         
    HSSFSheet worksheet= workbook.createSheet("Sheet4");        
    HSSFRow row = worksheet.createRow(1);
    HSSFCell cell= row.createCell(1);
    cell.setCellValue("admin");     

enter code here


    workbook.write(f);
    workbook.close();

共有2个答案

洪高阳
2023-03-14

我终于找到了解决办法。我曾经使用过poi jar 4.0,在其中我无法成功地写入数据。然后我将jar版本降级到3.14,我工作得很好

柯振濂
2023-03-14

使用FileInpuStream代替XSSFWorkbook的File and和对象我希望这个功能可以帮助你,

public static void write(){
       try
       {
           FileInputStream myxls = new FileInputStream(System.getProperty("user.dir")+"\\src\\test\\resources\\Exceldata.xls"  );
           HSSFWorkbook studentsSheet = new HSSFWorkbook(myxls);
           workbook = new XSSFWorkbook(myxls );
           workbook.createSheet(sheetname);
           HSSFSheet worksheet = studentsSheet.getSheetAt(0);
           a=worksheet.getLastRowNum();
           System.out.println(a);
           Row row = worksheet.createRow(++a);
           row.createCell(1).setCellValue("");
           myxls.close();
           FileOutputStream output_file =new FileOutputStream(new File(System.getProperty("user.dir")+"\\src\\test\\resources\\Exceldata.xls"));  
           //write changes
           workbook.write(output_file );

           studentsSheet.write(output_file);
           output_file.close();
           System.out.println(" is successfully written");
       }

尝试从main maethod调用此函数,

public static void main(String args[])
   {
       write();
   }

在java中使用apache poi在现有excel文件中追加数据可能重复,如何使用apache POI在现有Excel工作簿中添加新工作表?

 类似资料:
  • 本文向大家介绍如何使用python在Selenium中创建工作表并在其中写入一些值?,包括了如何使用python在Selenium中创建工作表并在其中写入一些值?的使用技巧和注意事项,需要的朋友参考一下 我们可以创建一个工作表,然后在其中编写一些值。Excel是一个电子表格,扩展名为.xlsx。一个excel工作簿有多个工作表,每个工作表都由行和列组成。 在所有工作表中,当我们访问一个称为活动工作

  • 我正在处理一个Excel工作簿,我希望工作簿为每一行新数据创建一个新工作表。下面的代码确实可以做到这一点,但问题是Excel使用每一行第一列中的文本作为新工作表的名称。我想更改它并使另一列成为新工作表名称的来源。请告知我需要更改哪一行才能完成此操作。谢谢您的帮助!

  • 我正在尝试使用一个包含多行数据的Excel工作表,并使用行中的一个值作为新工作簿名称为每一行创建单独的工作簿。这些工作簿将保存为逗号分隔的工作簿,以便它们可以上传到机器的控制器中。我可以手动打开一个新工作簿并从基本工作簿中获取单元格的外部引用,但对如何编写循环以使其自动在行中移动并创建新工作簿以及如何使用其中一个值作为新工作簿的名称感到困惑。 基本工作簿的结构是从A到J的行,其中A列包含我要将新工

  • 我无法使用 apache poi eclipse 在我创建的 java excel 中创建工作表

  • 我想用Python将我的数据帧导出到现有Excel工作表中的指定列,我尝试了不同的方法,但都不起作用。我已经将导出到一个名为“IR delta”的excel工作表中,现在我想在运行一些代码生成后,将导出到与相同的工作表中。但是,将创建excel工作表“IR delta 1”,而不是导出同一工作表“IR delta”。谁能帮忙吗?非常感谢! df1 df2 请看下面我的代码: 此时,我已将导出到ex

  • 我有一个谷歌表单(这里的例子),有两张表单——表单和数据。我已经设置了表单表,以便可以手动输入条目,单击“更新”按钮后,数据将作为新行发送到数据表的底部,表单字段将被清除,为下一次输入做好准备。 我试图更进一步-如果单击UPDATE按钮,并且零件号字段包含一个已经存在于数据表的列A中的值(意味着它已经在某个时候输入),则不应该有新行已添加,但具有匹配零件号的现有行应改为使用新提交的数据进行更新,将