Java ApachePOI:getNumMergedRegions

Java ApachePOI:getNumMergedRegions,java,apache-poi,Java,Apache Poi,我使用sheet.getNumMergedRegions(),我有代码: for(int i = 0; i < sheet.getNumMergedRegions(); i++) { CellRangeAddress merge = sheet.getMergedRegion(i); System.out.println("Number: " + i); System.out.println("

我使用
sheet.getNumMergedRegions()
,我有代码:

for(int i = 0; i < sheet.getNumMergedRegions(); i++) {
                CellRangeAddress merge = sheet.getMergedRegion(i);
                System.out.println("Number: " + i);
                System.out.println("first column: " + merge.getFirstColumn() + " last column " + merge.getLastColumn());
                System.out.println("first row: " + merge.getFirstRow() + " last row " + merge.getLastRow());
                System.out.println("==============");
                System.out.println();
            }

如何确定结果中的顺序?为什么第一个是数字0而不是数字3?

合并的区域存储在
MergedCellsTable
类的
ArrayList

因此,它们的存储顺序与将区域添加到
工作表中的顺序相同

public static void main(String[] args) {
   HSSFWorkbook workbook = new HSSFWorkbook();
   Sheet sheet = workbook.createSheet("Dump");
   sheet.addMergedRegion(new CellRangeAddress(0,1,2,3));
   sheet.addMergedRegion(new CellRangeAddress(0,0,0,0));
   sheet.addMergedRegion(new CellRangeAddress(0,1,2,2));
   sheet.addMergedRegion(new CellRangeAddress(3,3,3,3));

   //Output 
   System.out.println("num merged reagons: "+ sheet.getNumMergedRegions());
   for(int i = 0; i < sheet.getNumMergedRegions(); i++) {
      CellRangeAddress merge = sheet.getMergedRegion(i);
      System.out.println("Number:" + i+ " " + merge.getFirstRow() + " " + merge.getLastRow()+  " " + merge.getFirstColumn() + " " + merge.getLastColumn());
   }
}
publicstaticvoidmain(字符串[]args){
HSSFWorkbook=新的HSSFWorkbook();
工作表=工作簿.createSheet(“转储”);
表1.addMergedRegion(新的CellRangeAddress(0,1,2,3));
表.addMergedRegion(新的CellRangeAddress(0,0,0,0));
表1.addMergedRegion(新的CellRangeAddress(0,1,2,2));
表.地址合并区域(新的CellRangeAddress(3,3,3,3));
//输出
System.out.println(“num merged reagons:+sheet.getNumMergedRegions());
对于(int i=0;i
导致

合并区域数:4个
编号:0 0 1 2 3
编号:100
号码:21012
电话号码:3


这与我将四个区域添加到工作表中的顺序类似。

合并区域存储在
MergedCellsTable
类中的
ArrayList

因此,它们的存储顺序与将区域添加到
工作表中的顺序相同

public static void main(String[] args) {
   HSSFWorkbook workbook = new HSSFWorkbook();
   Sheet sheet = workbook.createSheet("Dump");
   sheet.addMergedRegion(new CellRangeAddress(0,1,2,3));
   sheet.addMergedRegion(new CellRangeAddress(0,0,0,0));
   sheet.addMergedRegion(new CellRangeAddress(0,1,2,2));
   sheet.addMergedRegion(new CellRangeAddress(3,3,3,3));

   //Output 
   System.out.println("num merged reagons: "+ sheet.getNumMergedRegions());
   for(int i = 0; i < sheet.getNumMergedRegions(); i++) {
      CellRangeAddress merge = sheet.getMergedRegion(i);
      System.out.println("Number:" + i+ " " + merge.getFirstRow() + " " + merge.getLastRow()+  " " + merge.getFirstColumn() + " " + merge.getLastColumn());
   }
}
publicstaticvoidmain(字符串[]args){
HSSFWorkbook=新的HSSFWorkbook();
工作表=工作簿.createSheet(“转储”);
表1.addMergedRegion(新的CellRangeAddress(0,1,2,3));
表.addMergedRegion(新的CellRangeAddress(0,0,0,0));
表1.addMergedRegion(新的CellRangeAddress(0,1,2,2));
表.地址合并区域(新的CellRangeAddress(3,3,3,3));
//输出
System.out.println(“num merged reagons:+sheet.getNumMergedRegions());
对于(int i=0;i
导致

合并区域数:4个
编号:0 0 1 2 3
编号:100
号码:21012
电话号码:3


这与我将四个区域添加到工作表中的顺序类似。

合并区域存储在
MergedCellsTable
类中的
ArrayList

因此,它们的存储顺序与将区域添加到
工作表中的顺序相同

public static void main(String[] args) {
   HSSFWorkbook workbook = new HSSFWorkbook();
   Sheet sheet = workbook.createSheet("Dump");
   sheet.addMergedRegion(new CellRangeAddress(0,1,2,3));
   sheet.addMergedRegion(new CellRangeAddress(0,0,0,0));
   sheet.addMergedRegion(new CellRangeAddress(0,1,2,2));
   sheet.addMergedRegion(new CellRangeAddress(3,3,3,3));

   //Output 
   System.out.println("num merged reagons: "+ sheet.getNumMergedRegions());
   for(int i = 0; i < sheet.getNumMergedRegions(); i++) {
      CellRangeAddress merge = sheet.getMergedRegion(i);
      System.out.println("Number:" + i+ " " + merge.getFirstRow() + " " + merge.getLastRow()+  " " + merge.getFirstColumn() + " " + merge.getLastColumn());
   }
}
publicstaticvoidmain(字符串[]args){
HSSFWorkbook=新的HSSFWorkbook();
工作表=工作簿.createSheet(“转储”);
表1.addMergedRegion(新的CellRangeAddress(0,1,2,3));
表.addMergedRegion(新的CellRangeAddress(0,0,0,0));
表1.addMergedRegion(新的CellRangeAddress(0,1,2,2));
表.地址合并区域(新的CellRangeAddress(3,3,3,3));
//输出
System.out.println(“num merged reagons:+sheet.getNumMergedRegions());
对于(int i=0;i
导致

合并区域数:4个
编号:0 0 1 2 3
编号:100
号码:21012
电话号码:3


这与我将四个区域添加到工作表中的顺序类似。

合并区域存储在
MergedCellsTable
类中的
ArrayList

因此,它们的存储顺序与将区域添加到
工作表中的顺序相同

public static void main(String[] args) {
   HSSFWorkbook workbook = new HSSFWorkbook();
   Sheet sheet = workbook.createSheet("Dump");
   sheet.addMergedRegion(new CellRangeAddress(0,1,2,3));
   sheet.addMergedRegion(new CellRangeAddress(0,0,0,0));
   sheet.addMergedRegion(new CellRangeAddress(0,1,2,2));
   sheet.addMergedRegion(new CellRangeAddress(3,3,3,3));

   //Output 
   System.out.println("num merged reagons: "+ sheet.getNumMergedRegions());
   for(int i = 0; i < sheet.getNumMergedRegions(); i++) {
      CellRangeAddress merge = sheet.getMergedRegion(i);
      System.out.println("Number:" + i+ " " + merge.getFirstRow() + " " + merge.getLastRow()+  " " + merge.getFirstColumn() + " " + merge.getLastColumn());
   }
}
publicstaticvoidmain(字符串[]args){
HSSFWorkbook=新的HSSFWorkbook();
工作表=工作簿.createSheet(“转储”);
表1.addMergedRegion(新的CellRangeAddress(0,1,2,3));
表.addMergedRegion(新的CellRangeAddress(0,0,0,0));
表1.addMergedRegion(新的CellRangeAddress(0,1,2,2));
表.地址合并区域(新的CellRangeAddress(3,3,3,3));
//输出
System.out.println(“num merged reagons:+sheet.getNumMergedRegions());
对于(int i=0;i
导致

合并区域数:4个
编号:0 0 1 2 3
编号:100
号码:21012
电话号码:3


这与我将四个区域添加到工作表中的顺序类似。

如果我的答案有效,请您接受我的问题。如果我的答案有效,请您接受我的问题。如果我的答案有效,请您接受我的问题。如果我的答案有效,请您接受我的问题。