本文整理汇总了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!");
}