我需要写一通在Excel中无法使用时POI的指定列 [英] I need to write a pass fail in excel at a specified column using POI

查看:249
本文介绍了我需要写一通在Excel中无法使用时POI的指定列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

确定 - 让我意识到,写一些code和搞清楚的东西,那JXL不支持XLSX后,才POI(XSSF)。好的。我所要做的就是搜索,在指定列的字符串值结果单元格。有一次,我发现,那么作为一个测试通过或失败,它是空白单元格写道:通过或失败。而且将继续这样做直到测试集已完成。这里是code我用JXL写道。

Ok - so I realized that after writing some code and figuring out stuff, that jxl does not support xlsx, only POI (XSSF). Ok fine. What I am trying to do is search for a cell with a string value "Result" in a specified column. Once I find that, then as a test passes or fails, it writes "Pass" or "Fail" in the cell that is blank. And it will continue to do that until the test set has finished. Here is the code I wrote using jxl.

WritableWorkbook wb = Workbook.createWorkbook(new File(testData), workbook);
        WritableSheet ws = wb.getSheet("OrderCreateQA3");
        int colCount = ws.getColumns();
        for(int j=0; j<colCount; j++){
            Cell cell = ws.getCell(j,0);
            if(cell.getContents().contains("Result")){
                Cell[] cells = ws.getColumn(j);
                int len = cells.length;
                Label label = new Label(j,len, "Fail", getCellFormat(Colour.RED));
                ws.addCell(label);
                break;
            }
        }

        wb.write();
        wb.close();

以上是pretty简单,我找到字符串,则得到的列名,写及格或不及格给出的长度。如何做到这一点使用POI任何想法?

The above was pretty straightforward, I find the string, then get that column name and write pass or fail given the length. Any ideas on how to do it using POI?

推荐答案

这是pretty直白,太。只需更换锦绣丽与他们同行的POI类/方法:

That's pretty straightforward, too. Simply replace jxl classes/methods with their POI counterparts:

POI有一个 XSSFWorkbook
 与 XSSFWorkbook(java.io.File中的文件)构造和 XSSFSheet getSheet(java.lang.String中的名称)方法。

POI has an XSSFWorkbook with an XSSFWorkbook(java.io.File file) constructor and an XSSFSheet getSheet(java.lang.String name) method.

XSSFSheet 有一个 XSSFRow的getRow(INT ROWNUM)办法(循环直到 getLastRowNum( )的实例)。

XSSFSheet has an XSSFRow getRow(int rownum) method (loop until getLastRowNum() for instance).

XSSFRow 有一个 XSSFCell getCell(INT cellnum,...)方法。

XSSFCell 有适当的getter / setter方法​​。

XSSFCell has appropriate getters/setters.

这篇关于我需要写一通在Excel中无法使用时POI的指定列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆