2012-11-06 10 views

Antwort

2

Von der frei verfügbare Quelle zum Download hier http://poi.apache.org/download.html wir haben ...

/** 
* @return the merged region at the specified index 
*/ 
public CellRangeAddress getMergedRegion(int index) { 
    return _sheet.getMergedRegionAt(index); 
} 

Als wir getMergedRegionAt wir

public CellRangeAddress getMergedRegionAt(int index) { 
    //safety checks 
    MergedCellsTable mrt = getMergedRecords(); 
    if (index >= mrt.getNumberOfMergedRegions()) { 
     return null; 
    } 
    return mrt.get(index); 
} 

Hier finden Drilldown können würden wir sehen, dass es sich hierbei um ein MergedCellsTable ist Geben Sie an, dass jedes Arbeitsblatt über eine Datenstruktur verfügt, die eine Liste der zusammengeführten Zellen in einem Arbeitsblatt verwaltet.

Von der Überprüfung der Code der Index verweist auf die spezifischen MergedRegion deren CellRangeAddress im Rahmen erforderlich war vielen Regionen haben.

Sie könnten dies als einen Dokumentationsfehler protokollieren oder einen Patch senden, um das JavaDoc zu verbessern.

2

Um diese Frage zu beantworten, definieren wir zunächst eine MergedRegion.

Eine MergedRegion ist im Wesentlichen eine Gruppe von Zellen zusammen gruppiert, die als eine Zelle fungieren können. Dies wird mit einer CellAdress erstellt, die eine Anzahl oder Zeilen oder Spalten umfassen kann.

Ein HSSFSheet kann eine Anzahl dieser MergedRegions von getNumMergedRegions angegebenen geben.

Der Index bezieht sich auf die in den MergedRegionHSSFSheet in Sheet Objekten MergedCellsTable Sicherung, die im Wesentlichen eine ArrayList.