当前位置: 首页>>代码示例>>Java>>正文


Java PoiUtil.getCellValue方法代码示例

本文整理汇总了Java中org.bbreak.excella.core.util.PoiUtil.getCellValue方法的典型用法代码示例。如果您正苦于以下问题:Java PoiUtil.getCellValue方法的具体用法?Java PoiUtil.getCellValue怎么用?Java PoiUtil.getCellValue使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.bbreak.excella.core.util.PoiUtil的用法示例。


在下文中一共展示了PoiUtil.getCellValue方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getBlockCellValue

import org.bbreak.excella.core.util.PoiUtil; //导入方法依赖的package包/类
/**
 * 対象シートの指定された範囲のセルに書かれている文字列をString[行番号][列番号]の形式で取得する。 セルに書かれている値が文字列でない場合は、nullがセットされる。
 * 
 * @param sheet 対象となるシート
 * @param bStartRowIndex 範囲開始行番号
 * @param bEndRowIndex 範囲終了行番号
 * @param bStartColIndex 範囲開始列番号
 * @param bEndColIndex 範囲終了列番号
 * @return セル文字列
 */
public static Object[][] getBlockCellValue( Sheet sheet, int bStartRowIndex, int bEndRowIndex, int bStartColIndex, int bEndColIndex) {
    Object[][] blockCellValue = new Object[bEndRowIndex - bStartRowIndex + 1][bEndColIndex - bStartColIndex + 1];
    int row = 0;
    for ( int bRowIndex = bStartRowIndex; bRowIndex <= bEndRowIndex; bRowIndex++) {
        int col = 0;
        for ( int bColIndex = bStartColIndex; bColIndex <= bEndColIndex; bColIndex++) {
            if ( sheet.getRow( bRowIndex) != null && sheet.getRow( bRowIndex).getCell( bColIndex) != null) {

                blockCellValue[row][col] = PoiUtil.getCellValue( sheet.getRow( bRowIndex).getCell( bColIndex));
            } else {
                blockCellValue[row][col] = null;
            }
            col++;
        }
        row++;
    }
    return blockCellValue;
}
 
开发者ID:excella-core,项目名称:excella-reports,代码行数:29,代码来源:ReportsUtil.java

示例2: parseCustomProperty

import org.bbreak.excella.core.util.PoiUtil; //导入方法依赖的package包/类
/**
 * カスタムパーサの処理を実行する
 * 
 * @parma valueCell 値を持つセル
 * @param colLogicalNameMap 論理名、カラムindexのマップ
 * @param obj 対象オブジェクト
 * @param valueRow 値列
 * @param tag タグ
 * @throws ParseException パース例外
 */
private void parseCustomProperty( Cell valueCell, Map<String, Integer> colLogicalNameMap, Object obj, Row valueRow, String tag) throws ParseException {

    for ( SheetToJavaPropertyParser propertyParser : customPropertyParsers) {

        // カスタムプロパティの判定
        if ( propertyParser.isParse( tag)) {

            // パラメータ内で定義されているプロパティ、値のマップ
            Map<String, String> paramMap = TagUtil.getParams( tag);
            Set<String> paramKeys = paramMap.keySet();

            Map<String, Object> paramValueMap = new HashMap<String, Object>();
            Map<String, Cell> paramCellMap = new HashMap<String, Cell>();
            for ( String paramKey : paramKeys) {

                String paramValue = paramMap.get( paramKey);
                if ( paramValue.startsWith( TAG_LOGICAL_NAME_PREFIX)) {
                    // 論理名の場合
                    String logicalMapKey = TagUtil.getParam( paramValue, LNAME_TAG_PARAM_PREFIX, LNAME_TAG_PARAM_SUFFIX);
                    Integer logicalKeyCol = colLogicalNameMap.get( logicalMapKey);
                    Cell cell = valueRow.getCell( logicalKeyCol);
                    Object cellValue = PoiUtil.getCellValue( cell);
                    paramValueMap.put( paramKey, cellValue);
                    paramCellMap.put( paramKey, cell);

                } else {
                    // 固定値の場合
                    paramValueMap.put( paramKey, paramValue);
                }
            }
            // カスタムパーサの処理実行
            propertyParser.parse( obj, paramCellMap, paramValueMap);
        }
    }
}
 
开发者ID:excella-core,项目名称:excella-trans,代码行数:46,代码来源:SheetToJavaExecuter.java

示例3: parse

import org.bbreak.excella.core.util.PoiUtil; //导入方法依赖的package包/类
/**
 * パース処理
 * 
 * @param sheet 対象シート
 * @param tagCell タグが定義されたセル
 * @param data BookControllerのparseBook(), parseSheet()メソッド、<BR>
 *              SheetParserのparseSheetメソッドで引数を渡した場合に<BR>
 *              TagParserまで引き継がれる処理データ<BR>
 * @return パース結果
 * @throws ParseException パース例外
 */
@Override
public List<?> parse( Sheet sheet, Cell tagCell, Object data) throws ParseException {

    // パース結果格納リスト
    List<Object> results = new ArrayList<Object>();

    try {
        // データ範囲
        int tagRowIdx = tagCell.getRowIndex();
        int valueRowFromIdx;
        int valueRowToIdx = sheet.getLastRowNum();
        int valueColIdx = tagCell.getColumnIndex();

        Map<String, String> paramDef = TagUtil.getParams( tagCell.getStringCellValue());

        // データ開始行の調整
        valueRowFromIdx = TagUtil.adjustValue( tagRowIdx, paramDef, PARAM_DATA_ROW_FROM, DEFAULT_VALUE_ROW_FROM_ADJUST);
        if ( valueRowFromIdx < 0 || valueRowFromIdx > sheet.getLastRowNum()) {
            throw new ParseException( tagCell, "パラメータ値不正:" + PARAM_DATA_ROW_FROM);
        }

        // データ終了行の調整
        valueRowToIdx = TagUtil.adjustValue( tagRowIdx, paramDef, PARAM_DATA_ROW_TO, valueRowToIdx - tagRowIdx);
        if ( valueRowToIdx > sheet.getLastRowNum() || valueRowToIdx < 0) {
            throw new ParseException( tagCell, "パラメータ値不正:" + PARAM_DATA_ROW_TO);
        }

        // データ開始行と終了行の関係チェック
        if ( valueRowFromIdx > valueRowToIdx) {
            throw new ParseException( tagCell, "パラメータ値不正:" + PARAM_DATA_ROW_FROM + "," + PARAM_DATA_ROW_TO);
        }

        // Value列番号の調整
        valueColIdx = TagUtil.adjustValue( valueColIdx, paramDef, PARAM_VALUE_COLUMN, DEFAULT_VALUE_COLUMN_ADJUST);
        if ( valueColIdx > PoiUtil.getLastColNum( sheet) || valueColIdx < 0) {
            throw new ParseException( tagCell, "パラメータ値不正:" + PARAM_VALUE_COLUMN);
        }

        // パース処理
        for ( int rowCnt = valueRowFromIdx; rowCnt <= valueRowToIdx; rowCnt++) {
            Row row = sheet.getRow( rowCnt);
            if ( row != null) {
                Object value = PoiUtil.getCellValue( row.getCell( valueColIdx));
                results.add( value);
            }
        }

    } catch ( Exception e) {
        if ( e instanceof ParseException) {
            throw ( ParseException) e;
        } else {
            throw new ParseException( tagCell, e);
        }
    }

    return results;
}
 
开发者ID:excella-core,项目名称:excella-core,代码行数:69,代码来源:ListParser.java


注:本文中的org.bbreak.excella.core.util.PoiUtil.getCellValue方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。