0

私はオブジェクトのリストを持っています(すべてのオブジェクトには1つの文字列と別のオブジェクトのリストが含まれています(このオブジェクトには2つの文字列が含まれています)

Apache poi API を使用して Excel シートにデータを追加する必要があります

List<objects> -->String(ex:-Test profile1, List<objects> --> String(tab name ex :standard -account),String (ex :hidden/default off)

タブ名 テスト プロファイル1 テスト プロファイル2 テスト プロファイル3 テスト プロファイル4

standard-Account デフォルト オフ デフォルト オフ デフォルト オフ デフォルト オフ standard-Campaign Hidden Hidden Hidden Hidden standard-Case デフォルト オフ デフォルト オフ デフォルト オフ デフォルト オフ standard-Contact デフォルト オン デフォルト オン デフォルト オン デフォルト オン

私が書いたコードは、オブジェクトのリスト(文字列、文字列)のサイズが変更されたときに機能し、正しく機能しません

HSSFRow rowTablevelHeader = null;
                HSSFRow rowtablevel = null;

            //check sheet name
            rowTablevelHeader = fourthSheet.createRow(0);

            HSSFCell cellT1 = rowTablevelHeader.createCell(0);
            cellT1.setCellValue(new HSSFRichTextString("TabName"));

            /*int maxtablevelSize = listprofileTabLevelVisibilities.get(0).getTablevelVisibility().size();

            for (int i = 0; i < listprofileTabLevelVisibilities.size(); i++) {

            int tablevelSize1 = listprofileTabLevelVisibilities.get(i).getTablevelVisibility().size();

            if(tablevelSize1 >maxtablevelSize)
            {
                maxtablevelSize= tablevelSize1;
            }
            }
            */

            for (int i = 0; i < listprofileTabLevelVisibilities.size(); i++) {


                HSSFCell cellP1 = rowTablevelHeader.createCell(i+1);
                cellP1.setCellValue(new HSSFRichTextString(listprofileTabLevelVisibilities.get(i).getProfileName()));

                int currentRow = 0;

    System.out.println("Size tablevel ---   "+listprofileTabLevelVisibilities.get(i).getTablevelVisibility().size());


                for (int j = 0; j < listprofileTabLevelVisibilities.get(i).getTablevelVisibility().size(); j++) {

                    currentRow++;

                    rowtablevel = fourthSheet.getRow(currentRow);

                    if(null == rowtablevel){
                        rowtablevel =fourthSheet.createRow(currentRow);
                    }

                    if(null ==rowtablevel.getCell(0))
                    {
                        HSSFCell cellAP1 = rowtablevel.createCell(0);
                        cellAP1.setCellValue(new HSSFRichTextString(listprofileTabLevelVisibilities.get(i).getTablevelVisibility().get(j).getTabName()));   
                    }


                System.out.println("Tab name ---  "+listprofileTabLevelVisibilities.get(i).getTablevelVisibility().get(j).getTabName());

                if(rowtablevel.getCell(0).getStringCellValue().equalsIgnoreCase(listprofileTabLevelVisibilities.get(i).getTablevelVisibility().get(j).getTabName())){
                    HSSFCell cellAP2 = rowtablevel.createCell(i+1);
                    cellAP2.setCellValue(new HSSFRichTextString(listprofileTabLevelVisibilities.get(i).getTablevelVisibility().get(j).getTabVisibility()));
                }
                }
            }
4

0 に答える 0