数值或者电话号码被EXCEL转成了科学计数法,用XSSFCell 如何读取

    public static Map<String, Integer> readXls() throws IOException {
    	//用来获取每一个小号重复多次,被多少账号用了。来平均 58 agent 查询出来的数据。
    	Map<String, Integer> map = new HashMap<String, Integer>();
        InputStream is = new FileInputStream("C:\\Users\\25\\Desktop\\dankeAnalyze\\新建文件夹\\58总数据20190613.xlsx");
        XSSFWorkbook hssfWorkbook = new XSSFWorkbook(is);
        // 循环工作表Sheet
        for (int numSheet = 0; numSheet < hssfWorkbook.getNumberOfSheets(); numSheet++) {
            XSSFSheet hssfSheet = hssfWorkbook.getSheetAt(numSheet);
            if (hssfSheet == null) {
                continue;
            }
            // 循环行Row
            NumberFormat nf = NumberFormat.getInstance();
            for (int rowNum = 1; rowNum <= hssfSheet.getLastRowNum(); rowNum++) {
                XSSFRow hssfRow = hssfSheet.getRow(rowNum);
                if (hssfRow != null) {
                	String phone_58 = (nf.format(hssfRow.getCell(11).getNumericCellValue())).replace(",", "");
                	XSSFCell dkstatus = hssfRow.getCell(17);
                	if(!getValue(dkstatus).equals("服务中")||phone_58==null||phone_58.length()!=11/*||!city.equals("北京")*/){
                		continue;
                	}
                	//通过 登录名获取展示手机号
                	if(map.containsKey(phone_58)){
                		map.put(phone_58, map.get(phone_58)+1);
                	}else{
                		map.put(phone_58, 1);
                	}
                }
            }
        }
        for(Map.Entry<String, Integer> entry : map.entrySet()){
        	System.out.println(entry.getKey()+":"+entry.getValue());
        }
        return map;
    }

  

转载于:https://www.cnblogs.com/tnsay/p/11189967.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值