1

私はExcelファイルのPOI APIをアップロードするのが初めてなので、特定の列の重複セルを検証する必要があります。のような例

String dupcolumn  = myRow.getcell(0);
Iterator iter = new Iterator();
while(iter.hesnext())
{
myRow = (Row) iter.next();

dupcolumn.contains(iter.toString());


}

上記のコードは、特定の列の読み取りをサポートしていませんが、常に列の連続読み取りをサポートしています。

4

1 に答える 1

6

このコードはあなたに役立つかもしれません。

InputStream xlsStream = excelFileUpload.getInputstream();
XSSFWorkbook wb  = new XSSFWorkbook(xlsStream);
XSSFSheet sheet = wb.getSheetAt(0);
Iterator<Row> rows=sheet.iterator();
//need to keep retrieved values in a collection to check duplicates. 
Set<String> values = new HashSet<String>();

//check all rows in excel sheet
while(rows.hasNext()){
    //get next row
    XSSFRow row =(XSSFRow)rows.next();
    //pass '0' means first cell (column) in current row. if you need to get other cell value, you can pass relevant cell number instead of '0'. 
    XSSFCell cell=row.getCell(0);
    if(values.contains(cell.getStringCellValue())){
        //duplicated value
    }else{
        values.add(cell.getStringCellValue());
    }
}
于 2012-11-06T04:49:25.590 に答える