本文整理匯總了Java中org.apache.poi.ss.util.CellRangeAddress.getFirstRow方法的典型用法代碼示例。如果您正苦於以下問題:Java CellRangeAddress.getFirstRow方法的具體用法?Java CellRangeAddress.getFirstRow怎麽用?Java CellRangeAddress.getFirstRow使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類org.apache.poi.ss.util.CellRangeAddress
的用法示例。
在下文中一共展示了CellRangeAddress.getFirstRow方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: getMergerCellRegionRow
import org.apache.poi.ss.util.CellRangeAddress; //導入方法依賴的package包/類
/**
* 判斷單元格是否是合並的單格,如果是,獲取其合並的行數。
*/
private static int getMergerCellRegionRow(HSSFSheet sheet, int cellRow, int cellCol) throws Throwable {
int retVal = 0;
int sheetMergerCount = sheet.getNumMergedRegions();
for (int i = 0; i < sheetMergerCount; i++) {
CellRangeAddress cra = sheet.getMergedRegion(i);
int firstRow = cra.getFirstRow(); // 合並單元格CELL起始行
int firstCol = cra.getFirstColumn(); // 合並單元格CELL起始列
int lastRow = cra.getLastRow(); // 合並單元格CELL結束行
int lastCol = cra.getLastColumn(); // 合並單元格CELL結束列
if (cellRow >= firstRow && cellRow <= lastRow) { // 判斷該單元格是否是在合並單元格中
if (cellCol >= firstCol && cellCol <= lastCol) {
retVal = lastRow - firstRow + 1; // 得到合並的行數
break;
}
}
}
return retVal;
}
示例2: getSpan
import org.apache.poi.ss.util.CellRangeAddress; //導入方法依賴的package包/類
private Span getSpan(XSSFSheet sheet,int row ,int column){
int sheetMergeCount = sheet.getNumMergedRegions();
for (int i = 0; i < sheetMergeCount; i++) {
CellRangeAddress range = sheet.getMergedRegion(i);
int firstColumn = range.getFirstColumn();
int lastColumn = range.getLastColumn();
int firstRow = range.getFirstRow();
if(row == firstRow && column==firstColumn){
int lastRow = range.getLastRow();
int rowSpan=lastRow-firstRow;
if(rowSpan>0){
rowSpan++;
}
int colSpan=lastColumn-firstColumn;
if(colSpan>0){
colSpan++;
}
return new Span(rowSpan,colSpan);
}
}
return new Span(0,0);
}
示例3: isMergedRegion
import org.apache.poi.ss.util.CellRangeAddress; //導入方法依賴的package包/類
private boolean isMergedRegion(XSSFSheet sheet, int row, int column) {
int sheetMergeCount = sheet.getNumMergedRegions();
for (int i = 0; i < sheetMergeCount; i++) {
CellRangeAddress range = sheet.getMergedRegion(i);
int firstColumn = range.getFirstColumn();
int lastColumn = range.getLastColumn();
int firstRow = range.getFirstRow();
int lastRow = range.getLastRow();
if (row > firstRow && row < lastRow) {
if (column > firstColumn && column < lastColumn) {
return true;
}
}
}
return false;
}
示例4: getMergerCellRegionCol
import org.apache.poi.ss.util.CellRangeAddress; //導入方法依賴的package包/類
/**
* 判斷單元格在不在合並單元格範圍內,如果是,獲取其合並的列數。
*/
private static int getMergerCellRegionCol(HSSFSheet sheet, int cellRow, int cellCol) throws Throwable {
int retVal = 0;
int sheetMergerCount = sheet.getNumMergedRegions();
for (int i = 0; i < sheetMergerCount; i++) {
CellRangeAddress cra = sheet.getMergedRegion(i);
int firstRow = cra.getFirstRow(); // 合並單元格CELL起始行
int firstCol = cra.getFirstColumn(); // 合並單元格CELL起始列
int lastRow = cra.getLastRow(); // 合並單元格CELL結束行
int lastCol = cra.getLastColumn(); // 合並單元格CELL結束列
if (cellRow >= firstRow && cellRow <= lastRow) { // 判斷該單元格是否是在合並單元格中
if (cellCol >= firstCol && cellCol <= lastCol) {
retVal = lastCol - firstCol + 1; // 得到合並的列數
break;
}
}
}
return retVal;
}
示例5: getSpan
import org.apache.poi.ss.util.CellRangeAddress; //導入方法依賴的package包/類
private Span getSpan(HSSFSheet sheet,int row ,int column){
int sheetMergeCount = sheet.getNumMergedRegions();
for (int i = 0; i < sheetMergeCount; i++) {
CellRangeAddress range = sheet.getMergedRegion(i);
int firstColumn = range.getFirstColumn();
int lastColumn = range.getLastColumn();
int firstRow = range.getFirstRow();
if(row == firstRow && column==firstColumn){
int lastRow = range.getLastRow();
int rowSpan=lastRow-firstRow;
if(rowSpan>0){
rowSpan++;
}
int colSpan=lastColumn-firstColumn;
if(colSpan>0){
colSpan++;
}
return new Span(rowSpan,colSpan);
}
}
return new Span(0,0);
}
示例6: isMergedRegion
import org.apache.poi.ss.util.CellRangeAddress; //導入方法依賴的package包/類
private boolean isMergedRegion(HSSFSheet sheet, int row, int column) {
int sheetMergeCount = sheet.getNumMergedRegions();
for (int i = 0; i < sheetMergeCount; i++) {
CellRangeAddress range = sheet.getMergedRegion(i);
int firstColumn = range.getFirstColumn();
int lastColumn = range.getLastColumn();
int firstRow = range.getFirstRow();
int lastRow = range.getLastRow();
if (row > firstRow && row < lastRow) {
if (column > firstColumn && column < lastColumn) {
return true;
}
}
}
return false;
}
示例7: copyRow
import org.apache.poi.ss.util.CellRangeAddress; //導入方法依賴的package包/類
/**
* @param srcSheet the sheet to copy.
* @param destSheet the sheet to create.
* @param srcRow the row to copy.
* @param destRow the row to create.
* @param styleMap -
*/
public static void copyRow(XSSFSheet srcSheet, XSSFSheet destSheet, XSSFRow srcRow, XSSFRow destRow, Map<Integer, XSSFCellStyle> styleMap) {
// manage a list of merged zone in order to not insert two times a merged zone
Set<CellRangeAddressWrapper> mergedRegions = new TreeSet<CellRangeAddressWrapper>();
destRow.setHeight(srcRow.getHeight());
// pour chaque row
for (int j = srcRow.getFirstCellNum(); j <= srcRow.getLastCellNum(); j++) {
if(j<0){
}else{
XSSFCell oldCell = srcRow.getCell(j); // ancienne cell
XSSFCell newCell = destRow.getCell(j); // new cell
if (oldCell != null) {
if (newCell == null) {
newCell = destRow.createCell(j);
}
// copy chaque cell
copyCell(oldCell, newCell, styleMap);
// copy les informations de fusion entre les cellules
//System.out.println("row num: " + srcRow.getRowNum() + " , col: " + (short)oldCell.getColumnIndex());
CellRangeAddress mergedRegion = getMergedRegion(srcSheet, srcRow.getRowNum(), (short) oldCell.getColumnIndex());
if (mergedRegion != null) {
//System.out.println("Selected merged region: " + mergedRegion.toString());
CellRangeAddress newMergedRegion = new CellRangeAddress(mergedRegion.getFirstRow(), mergedRegion.getLastRow(), mergedRegion.getFirstColumn(), mergedRegion.getLastColumn());
//System.out.println("New merged region: " + newMergedRegion.toString());
CellRangeAddressWrapper wrapper = new CellRangeAddressWrapper(newMergedRegion);
if (isNewMergedRegion(wrapper, mergedRegions)) {
mergedRegions.add(wrapper);
destSheet.addMergedRegion(wrapper.range);
}
}
}
}
}
}
示例8: getMergedRegionValue
import org.apache.poi.ss.util.CellRangeAddress; //導入方法依賴的package包/類
/**
* 獲取合並單元格的值
* @param sheet
* @param row
* @param column
* @return
*/
public static String getMergedRegionValue(Sheet sheet, int row, int column) {
int sheetMergeCount = sheet.getNumMergedRegions();
for (int i = 0; i < sheetMergeCount; i++) {
CellRangeAddress ca = sheet.getMergedRegion(i);
int firstColumn = ca.getFirstColumn();
int lastColumn = ca.getLastColumn();
int firstRow = ca.getFirstRow();
int lastRow = ca.getLastRow();
if (row >= firstRow && row <= lastRow) {
if (column >= firstColumn && column <= lastColumn) {
Row fRow = sheet.getRow(firstRow);
Cell fCell = fRow.getCell(firstColumn);
return getCellValue(fCell);
}
}
}
return null;
}
示例9: isMergedRegion
import org.apache.poi.ss.util.CellRangeAddress; //導入方法依賴的package包/類
/**
* 判斷指定的單元格是否是合並單元格
* @param sheet
* @param row
* @param column
* @return
*/
public static boolean isMergedRegion(Sheet sheet, int row, int column) {
int sheetMergeCount = sheet.getNumMergedRegions();
for (int i = 0; i < sheetMergeCount; i++) {
CellRangeAddress ca = sheet.getMergedRegion(i);
int firstColumn = ca.getFirstColumn();
int lastColumn = ca.getLastColumn();
int firstRow = ca.getFirstRow();
int lastRow = ca.getLastRow();
if (row >= firstRow && row <= lastRow) {
if (column >= firstColumn && column <= lastColumn) {
return true;
}
}
}
return false;
}
示例10: getMergedRegion
import org.apache.poi.ss.util.CellRangeAddress; //導入方法依賴的package包/類
public static CellRangeAddress getMergedRegion(final HSSFSheet sheet, final CellLocation location) {
for (int i = 0; i < sheet.getNumMergedRegions(); i++) {
final CellRangeAddress region = sheet.getMergedRegion(i);
final int rowFrom = region.getFirstRow();
final int rowTo = region.getLastRow();
if (rowFrom == location.r && rowTo == location.r) {
final int colFrom = region.getFirstColumn();
if (colFrom == location.c) {
return region;
}
}
}
return null;
}
示例11: getMergedRegionList
import org.apache.poi.ss.util.CellRangeAddress; //導入方法依賴的package包/類
public static List<CellRangeAddress> getMergedRegionList(final HSSFSheet sheet, final int rowNum) {
final List<CellRangeAddress> regionList = new ArrayList<CellRangeAddress>();
for (int i = 0; i < sheet.getNumMergedRegions(); i++) {
final CellRangeAddress region = sheet.getMergedRegion(i);
final int rowFrom = region.getFirstRow();
final int rowTo = region.getLastRow();
if (rowFrom == rowNum && rowTo == rowNum) {
regionList.add(region);
}
}
return regionList;
}
示例12: copyRows
import org.apache.poi.ss.util.CellRangeAddress; //導入方法依賴的package包/類
/**
* 指定範囲の行をコピーします。
* @param sheet シート。
* @param from コピー元。
* @param rows コピー行數。
* @param to コピー先。
*/
private void copyRows(final Sheet sheet, final int from, final int rows, final int to) {
for (int i = from; i < rows; i++) {
this.copyRow(sheet, from + i, to + i);
}
// 結合情報をコピーする。
int cnt = sheet.getNumMergedRegions();
for (int i = 0; i < cnt; i++) {
CellRangeAddress cra = sheet.getMergedRegion(i);
if (from <= cra.getFirstRow() && cra.getFirstRow() < from + rows) {
cra.setFirstRow(cra.getFirstRow() + to);
cra.setLastRow(cra.getLastRow() + to);
sheet.addMergedRegion(cra);
}
}
}
示例13: getMergedRegion
import org.apache.poi.ss.util.CellRangeAddress; //導入方法依賴的package包/類
public static CellRangeAddress getMergedRegion(HSSFSheet sheet,
CellLocation location) {
for (int i = 0; i < sheet.getNumMergedRegions(); i++) {
CellRangeAddress region = sheet.getMergedRegion(i);
int rowFrom = region.getFirstRow();
int rowTo = region.getLastRow();
if (rowFrom == location.r && rowTo == location.r) {
int colFrom = region.getFirstColumn();
if (colFrom == location.c) {
return region;
}
}
}
return null;
}
示例14: getMergedRegionList
import org.apache.poi.ss.util.CellRangeAddress; //導入方法依賴的package包/類
public static List<CellRangeAddress> getMergedRegionList(HSSFSheet sheet,
int rowNum) {
List<CellRangeAddress> regionList = new ArrayList<CellRangeAddress>();
for (int i = 0; i < sheet.getNumMergedRegions(); i++) {
CellRangeAddress region = sheet.getMergedRegion(i);
int rowFrom = region.getFirstRow();
int rowTo = region.getLastRow();
if (rowFrom == rowNum && rowTo == rowNum) {
regionList.add(region);
}
}
return regionList;
}
示例15: A1RangeAddress
import org.apache.poi.ss.util.CellRangeAddress; //導入方法依賴的package包/類
protected A1RangeAddress(String a1address) {
this.addresses = new LinkedList<>();
if (!a1address.contains(RANGE_DELIMITER)) { this.addresses.add(A1Address.fromA1Address(a1address)); return; }
CellRangeAddress addrs = CellRangeAddress.valueOf(a1address);
int fromR = addrs.getFirstRow();
int fromC = addrs.getFirstColumn();
int toR = addrs.getLastRow();
int toC = addrs.getLastColumn();
for (int row = fromR; row <= toR; row++) {
for (int col = fromC; col <= toC; col++) {
this.addresses.add(A1Address.fromRowColumn(row, col));
}
}
}