`
czltx224
  • 浏览: 18118 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

ReadExcelUtils帮助类

    博客分类:
  • java
阅读更多
对一些常用的格式做了处理,替换了换行和一些空格
package com.concom.imports.utils;

import java.text.DecimalFormat;
import java.util.regex.Pattern;

import org.apache.poi.ss.usermodel.Cell;

/**
 * @author Cao Zhili
 * @date 2015年5月20日
 */
public class ReadExcelUtils {

	private final static Pattern pattern = Pattern.compile("\\s*|\t|\r|\n"); 
	
	private final static DecimalFormat df = new DecimalFormat("#.0000"); 
	
	/**
	 * 获取单元格的值
	 * 
	 * @param cell
	 * @return
	 */
	public static String getCellValue(Cell cell) {
		String val = "";
		if (cell == null)
			return val;

		switch (cell.getCellType()) {
			case Cell.CELL_TYPE_STRING:
				val = cell.getStringCellValue();
				break;
			case Cell.CELL_TYPE_BOOLEAN:
				val = String.valueOf(cell.getBooleanCellValue());
				break;
			case Cell.CELL_TYPE_FORMULA:
				//val = cell.getCellFormula();
				 try {
					 double doubleVal = cell.getNumericCellValue();
					 val = df.format(doubleVal);
				 } catch (IllegalStateException e) {
					 val = String.valueOf(cell.getRichStringCellValue());
				 }
				 break;
			case Cell.CELL_TYPE_NUMERIC:
				val = String.valueOf(cell.getNumericCellValue());
				break;
			case Cell.CELL_TYPE_BLANK:
				val = "";
				break;
			case Cell.CELL_TYPE_ERROR:
				val = "";
				break;
			default:
				break;
		}
		if(!"".equals(val)){
			val = pattern.matcher(val).replaceAll(""); 
			val = val.replaceAll("_x000D_", "");
		}
		return val;
	}
	
	public static String getCellValueTrim(Cell cell) {
		String val = "";
		if (cell == null)
			return val;

		switch (cell.getCellType()) {
			case Cell.CELL_TYPE_STRING:
				val = cell.getStringCellValue();
				break;
			case Cell.CELL_TYPE_BOOLEAN:
				val = String.valueOf(cell.getBooleanCellValue());
				break;
			case Cell.CELL_TYPE_FORMULA:
				//val = cell.getCellFormula();
				 try {
					 double doubleVal = cell.getNumericCellValue();
					 val = df.format(doubleVal);
				 } catch (IllegalStateException e) {
					 val = String.valueOf(cell.getRichStringCellValue());
				 }
				 break;
			case Cell.CELL_TYPE_NUMERIC:
				val = String.valueOf(cell.getNumericCellValue());
				break;
			case Cell.CELL_TYPE_BLANK:
				val = "";
				break;
			case Cell.CELL_TYPE_ERROR:
				val = "";
				break;
			default:
				break;
		}
		if(!"".equals(val)){
			val = val.trim();
			val = val.replaceAll("_x000D_", "");
		}
		return val;
	}
	
	public static boolean isBlank(String str) {
        int strLen;
        if (str == null || (strLen = str.length()) == 0) {
            return true;
        }
        for (int i = 0; i < strLen; i++) {
            if ((Character.isWhitespace(str.charAt(i)) == false)) {
                return false;
            }
        }
        return true;
    }
}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics