使用Apache POI在现有行中增加价值

时间:2019-01-31 14:29:23

标签: java excel apache-poi

我有2个数组,需要从第二行开始在excel中复制,但列号不同。

第一个数组成功复制,但是在我做第二个数组时 row = sheet.createRow(i)并尝试复制

实际上是在覆盖第一个数组的值。

public int setCellData(String[][] data,String LBorCH,int LastLBStartPoint){
    int lastrow = 0;
    try
    {
        //Find last row filled in Excel
        lastrow = sheet.getLastRowNum();
        //Row count array
        int dataRows = data.length;

        //Column count
        //for loop for iterating over the data
        if(LBorCH =="LB")
        {
            for(int i=0;i<dataRows;i++)
            {
                int dataColumn = data[i].length;

                i=i+1+lastrow;
                row =sheet.createRow(i);
                i=i-1-lastrow;

                for(int j=0;j<dataColumn;j++)
                {
                    String fillData = data[i][j];
                    j = j+2;
                    cell = row.createCell(j);
                    j=j-2;
                    //Set value into cell
                    cell.setCellValue(fillData);
                }
            }
        }
        else
        {
            for(int i=0;i<dataRows;i++)
            {
                int dataColumn = data[i].length;

                i=i+1+LastLBStartPoint;
                row =sheet.createRow(i);
                i=i-1-LastLBStartPoint;

                for(int j=0;j<dataColumn;j++)
                {
                    String fillData = data[i][j];
                    j = j+5;
                    cell = row.createCell(j);
                    j=j-5;
                    //Set value into cell
                    cell.setCellValue(fillData); 
                }
            }

        }

        fileOut = new FileOutputStream(path);
        workbook.write(fileOut);
        fileOut.close();
    }
    catch(Exception e)
    {
        e.printStackTrace();

    }
    return lastrow;
}

This is image of excel

Excel中的LogicBroker部分已完成,我必须复制来自不同类的CommerceHub部分中的数组,然后转到代码中的else部分。

请帮助我

0 个答案:

没有答案