本文整理匯總了Java中org.apache.poi.ss.usermodel.Cell.CELL_TYPE_NUMERIC屬性的典型用法代碼示例。如果您正苦於以下問題:Java Cell.CELL_TYPE_NUMERIC屬性的具體用法?Java Cell.CELL_TYPE_NUMERIC怎麽用?Java Cell.CELL_TYPE_NUMERIC使用的例子?那麽, 這裏精選的屬性代碼示例或許可以為您提供幫助。您也可以進一步了解該屬性所在類org.apache.poi.ss.usermodel.Cell
的用法示例。
在下文中一共展示了Cell.CELL_TYPE_NUMERIC屬性的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: getCharValue
private char getCharValue(Cell cell) {
int vType = getCellType(cell);
switch (vType) {
case Cell.CELL_TYPE_BLANK:
return 0;
case Cell.CELL_TYPE_NUMERIC:
return (char) cell.getNumericCellValue();
case Cell.CELL_TYPE_STRING:
String vStr = cell.getStringCellValue();
if (vStr.length() == 1)
return vStr.charAt(0);
else
throw new IllegalArgumentException("Can't get char from String whose length > 1");
default:
throw new IllegalArgumentException("Can't get char from type " + vType);
}
}
示例2: getCellValue
public Object getCellValue(Cell cell){
Object value = null;
DecimalFormat df = new DecimalFormat("0"); //格式化number String字符
DecimalFormat df2 = new DecimalFormat("0.00"); //格式化數字
switch (cell.getCellType()) {
case Cell.CELL_TYPE_STRING:
value = cell.getRichStringCellValue().getString();
break;
case Cell.CELL_TYPE_NUMERIC:
if("General".equals(cell.getCellStyle().getDataFormatString())) {
value = df.format(cell.getNumericCellValue());
} else {
value = df2.format(cell.getNumericCellValue());
}
break;
case Cell.CELL_TYPE_BOOLEAN:
value = cell.getBooleanCellValue();
break;
case Cell.CELL_TYPE_BLANK:
value = "";
break;
default:
break;
}
return value;
}
示例3: isBlankRow
/**
* 判斷空行
*/
private static boolean isBlankRow(Row row) {
if (row == null) {
return true;
}
boolean result = true;
Iterator<Cell> cells = row.cellIterator();
String value = "";
while (cells.hasNext()) {
Cell cell = cells.next();
int cellType = cell.getCellType();
switch (cellType) {
case Cell.CELL_TYPE_NUMERIC:
value = String.valueOf(cell.getNumericCellValue());
break;
case Cell.CELL_TYPE_STRING:
value = cell.getStringCellValue();
break;
case Cell.CELL_TYPE_BOOLEAN:
value = String.valueOf(cell.getBooleanCellValue());
break;
case Cell.CELL_TYPE_FORMULA:
value = String.valueOf(cell.getCellFormula());
break;
}
if (StringUtils.isNotBlank(value)) {
result = false;
break;
}
}
return result;
}
示例4: getNumbericValue
private double getNumbericValue(Cell cell, Class<? extends Number> clazz) {
double vRet;
int vType = getCellType(cell);
switch (vType) {
case Cell.CELL_TYPE_BLANK:
vRet = 0;
break;
case Cell.CELL_TYPE_NUMERIC:
vRet = cell.getNumericCellValue();
break;
case Cell.CELL_TYPE_STRING:
String vStr = cell.getStringCellValue();
vRet = Double.valueOf(vStr);
break;
default:
throw new IllegalArgumentException("Can't get " + clazz.getSimpleName() + " from type " + vType);
}
return vRet;
}
示例5: geByte
public static Byte geByte(Cell cell) {
if (isNullCell(cell)) {
return null;
}
if (Cell.CELL_TYPE_NUMERIC == cell.getCellType()) {
return (byte) cell.getNumericCellValue();
}
if (Cell.CELL_TYPE_STRING == cell.getCellType()) {
String value = cell.getStringCellValue();
if(StringUtils.isNotEmpty(value)){
Byte.valueOf(cell.getStringCellValue());
}else{
return null;
}
}
throw new RuntimeException("can not convertWithConstructor cell value to Integer!");
}
示例6: getStartRow
private int getStartRow(Sheet sheet) throws SheetParsingException {
Iterator<Row> rit = sheet.iterator();
while (rit.hasNext()) {
Row row = rit.next();
Cell cell = row.getCell(0);
if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) {
/*
* In my case first column is Sr.no. and Data starts where sr. no is 1 ,so this
* is start row index
*/
if (cell.getNumericCellValue() == 1.0)
return row.getRowNum();
}
}
throw new SheetParsingException("no start index found for data");
}
示例7: main
public static void main(String[] args) {
//Create Workbook instance holding reference to .xlsx file
try (FileInputStream file = new FileInputStream(
new File("Sample.xlsx"))) {
//Create Workbook instance holding reference to .xlsx file
XSSFWorkbook workbook = new XSSFWorkbook(file);
//Get first/desired sheet from the workbook
XSSFSheet sheet = workbook.getSheetAt(0);
//Iterate through each rows one by one
// Iterator<Row> rowIterator = sheet.iterator();
for(Row row : sheet) {
for (Cell cell : row) {
//Check the cell type and format accordingly
switch (cell.getCellType()) {
case Cell.CELL_TYPE_NUMERIC:
out.print(cell.getNumericCellValue() + "\t");
break;
case Cell.CELL_TYPE_STRING:
out.print(cell.getStringCellValue() + "\t");
break;
}
}
out.println();
}
} catch (IOException e) {
e.printStackTrace();
}
}
開發者ID:PacktPublishing,項目名稱:Machine-Learning-End-to-Endguide-for-Java-developers,代碼行數:30,代碼來源:ReadExcelExample.java
示例8: getDouble
public static Double getDouble(Cell cell) {
if (isNullCell(cell)) {
return null;
}
if (Cell.CELL_TYPE_NUMERIC == cell.getCellType()) {
return cell.getNumericCellValue();
}
if (Cell.CELL_TYPE_STRING == cell.getCellType()) {
return Double.parseDouble(cell.getStringCellValue());
}
throw new RuntimeException("can not convertWithConstructor cell value to Double!");
}
示例9: getValue
/** 從表格之中讀取數據並進行處理
* @param fieldInfo
* @param cell 當前cell
* @return
* @throws Exception
*/
public static Object getValue(ImportFieldInfo fieldInfo, Cell cell) throws Exception{
int size = fieldInfo.getTypeChain().size();
Class<?> type = fieldInfo.getTypeChain().get(size - 1);
String dateFormat = fieldInfo.getDateFormat();
int cellType = cell.getCellType();
Object obj = null ;
switch (cellType) {
case Cell.CELL_TYPE_BLANK:
return null;
case Cell.CELL_TYPE_BOOLEAN:
obj = cell.getBooleanCellValue();
break;
case Cell.CELL_TYPE_STRING:
obj = cell.getStringCellValue();
break;
case Cell.CELL_TYPE_NUMERIC:
if(DateUtil.isCellDateFormatted(cell)){
obj = DateUtil.getJavaDate(cell.getNumericCellValue());
}else if(Number.class.isAssignableFrom(type) || ClassUtils.isBaseNumberType(type)){
//當pojo字段類型是數字型時以數字形式獲取
obj = cell.getNumericCellValue();
}else{
//其他類型都以string獲取
obj = DATA_FORMATTER.formatCellValue(cell);
}
break;
case Cell.CELL_TYPE_ERROR:
return null;
}
if(fieldInfo.getImportProcessor() != null){
obj = fieldInfo.getImportProcessor().process(obj);
}
obj = ConvertUtils.convertIfNeccesary(obj, type, dateFormat);
return obj;
}
示例10: getLong
public static Long getLong(Cell cell) {
if (isNullCell(cell)) {
return null;
}
if (Cell.CELL_TYPE_NUMERIC == cell.getCellType()) {
return (long) cell.getNumericCellValue();
}
if (Cell.CELL_TYPE_STRING == cell.getCellType()) {
return Longs.tryParse(cell.getStringCellValue());
}
throw new RuntimeException("can not convertWithConstructor cell value to Long!");
}
示例11: getCellValue
/**
* 獲取單元格值
*
* @param row 獲取的行
* @param column 獲取單元格列號
* @return 單元格值
*/
public Object getCellValue(Row row, int column) {
Object val = "";
try {
Cell cell = row.getCell(column);
if (cell != null) {
if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) {
// val = cell.getNumericCellValue();
// 當excel 中的數據為數值或日期是需要特殊處理
if (HSSFDateUtil.isCellDateFormatted(cell)) {
double d = cell.getNumericCellValue();
Date date = HSSFDateUtil.getJavaDate(d);
SimpleDateFormat dformat = new SimpleDateFormat(
"yyyy-MM-dd");
val = dformat.format(date);
} else {
NumberFormat nf = NumberFormat.getInstance();
nf.setGroupingUsed(false);// true時的格式:1,234,567,890
val = nf.format(cell.getNumericCellValue());// 數值類型的數據為double,所以需要轉換一下
}
} else if (cell.getCellType() == Cell.CELL_TYPE_STRING) {
val = cell.getStringCellValue();
} else if (cell.getCellType() == Cell.CELL_TYPE_FORMULA) {
val = cell.getCellFormula();
} else if (cell.getCellType() == Cell.CELL_TYPE_BOOLEAN) {
val = cell.getBooleanCellValue();
} else if (cell.getCellType() == Cell.CELL_TYPE_ERROR) {
val = cell.getErrorCellValue();
}
}
} catch (Exception e) {
return val;
}
return val;
}
示例12: getInteger
public static Integer getInteger(Cell cell) {
if (isNullCell(cell)) {
return null;
}
if (Cell.CELL_TYPE_NUMERIC == cell.getCellType()) {
return (int) cell.getNumericCellValue();
}
if (Cell.CELL_TYPE_STRING == cell.getCellType()) {
return Integer.parseInt(cell.getStringCellValue());
}
throw new RuntimeException("can not convertWithConstructor cell value to Integer!");
}
示例13: getBooleanValue
private boolean getBooleanValue(Cell cell) {
switch (getCellType(cell)) {
case Cell.CELL_TYPE_BOOLEAN:
return cell.getBooleanCellValue();
case Cell.CELL_TYPE_NUMERIC:
return Double.compare(cell.getNumericCellValue(), 0) != 0;
case Cell.CELL_TYPE_STRING:
return Boolean.valueOf(cell.getStringCellValue());
default:
return false;
}
}
示例14: getCellFormatValue
/**
* 根據HSSFCell類型設置數據(簡單導入使用)
*
* @param cell 單元格
* @return 處理後的值
*/
private static String getCellFormatValue(Cell cell) {
String cellValue;
if (cell != null) {
// 判斷當前Cell的Type
switch (cell.getCellType()) {
// 如果當前Cell的Type為NUMERIC
case Cell.CELL_TYPE_NUMERIC:
case Cell.CELL_TYPE_FORMULA: {
// 判斷當前的cell是否為Date
if (DateUtil.isCellDateFormatted(cell)) {
// 如果是Date類型則,轉化為Data格式
Date date = cell.getDateCellValue();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
cellValue = sdf.format(date);
}
// 如果是純數字
else {
//避免科學計數
java.text.NumberFormat nf = java.text.NumberFormat.getInstance();
nf.setGroupingUsed(false);
// 取得當前Cell的數值
cellValue = String.valueOf(nf.format(cell.getNumericCellValue()));
}
break;
}
// 如果當前Cell的Type為STRING
case Cell.CELL_TYPE_STRING:
// 取得當前的Cell字符串
cellValue = cell.getStringCellValue();
break;
// 默認的Cell值
default:
cellValue = " ";
}
} else {
cellValue = "";
}
return cellValue;
}
示例15: getShort
public static Short getShort(Cell cell) {
if (isNullCell(cell)) {
return null;
}
if (Cell.CELL_TYPE_NUMERIC == cell.getCellType()) {
return (short) cell.getNumericCellValue();
}
if (Cell.CELL_TYPE_STRING == cell.getCellType()) {
return Short.parseShort(cell.getStringCellValue());
}
throw new RuntimeException("can not convertWithConstructor cell value to Short!");
}