私はオブジェクトのリストを持っています(すべてのオブジェクトには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()));
}
}
}