mirror of https://github.com/apache/poi.git
[bug-64536] add getDimension on XSSFSheet
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1899091 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
d013349052
commit
56b4313997
|
@ -3962,6 +3962,20 @@ public class XSSFSheet extends POIXMLDocumentPart implements Sheet, OoxmlSheetEx
|
|||
safeGetProtectionField().setSelectUnlockedCells(enabled);
|
||||
}
|
||||
|
||||
/**
|
||||
* Reads the dimensions of the sheet data
|
||||
* @return dimensions of the sheet data as a Cell Range (can be null)
|
||||
* @since POI 5.2.3
|
||||
*/
|
||||
public CellRangeAddress getDimension() {
|
||||
CTSheetDimension ctSheetDimension = worksheet.getDimension();
|
||||
String ref = ctSheetDimension == null ? null : ctSheetDimension.getRef();
|
||||
if (ref != null) {
|
||||
return CellRangeAddress.valueOf(ref);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
private CTSheetProtection safeGetProtectionField() {
|
||||
if (!isSheetProtectionEnabled()) {
|
||||
return worksheet.addNewSheetProtection();
|
||||
|
|
|
@ -2253,4 +2253,28 @@ public final class TestXSSFSheet extends BaseTestXSheet {
|
|||
assertTrue(row2.getZeroHeight());
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
void testBug64536() throws IOException {
|
||||
try (
|
||||
XSSFWorkbook xssfWorkbook = (XSSFWorkbook) _testDataProvider.openSampleWorkbook("1_NoIden.xlsx");
|
||||
UnsynchronizedByteArrayOutputStream bos = new UnsynchronizedByteArrayOutputStream()
|
||||
) {
|
||||
XSSFSheet fileSheet = xssfWorkbook.getSheetAt(0);
|
||||
assertEquals(CellRangeAddress.valueOf("B1:D9"), fileSheet.getDimension());
|
||||
|
||||
// Create Row and Cell, Then Set a Value
|
||||
// 5, 2, 4 is just random number for test
|
||||
Row fileRow = fileSheet.createRow(5);
|
||||
Cell fileCell = fileRow.createCell(2, CellType.STRING);
|
||||
fileCell.setCellValue("TEST VALUE");
|
||||
|
||||
xssfWorkbook.write(bos);
|
||||
|
||||
try (XSSFWorkbook xssfWorkbook2 = new XSSFWorkbook(bos.toInputStream())) {
|
||||
XSSFSheet xssfSheet = xssfWorkbook2.getSheetAt(0);
|
||||
assertEquals(CellRangeAddress.valueOf("B1:F9"), xssfSheet.getDimension());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Binary file not shown.
Loading…
Reference in New Issue