`

java poi excel 导入

阅读更多
/**
	 * 资料导入方法
	 * @param filePath  资料文件路径
	 * @return 资料信息
	 */
	public List<Map<String, String>> infomationImport(String filePath)  {
		
		//存储 资料集合
		List<Map<String, String>> infomationList = new ArrayList<Map<String,String>>();
		
		try{
			//创建文件输入流
			FileInputStream is= new FileInputStream(new File(filePath));
			
			HSSFWorkbook workbook = new HSSFWorkbook(is); //创建对Excel工作簿文件的引用    
			 /**
	         * 循环sheet页
	         */
	        for (int numSheets = 0; numSheets < workbook.getNumberOfSheets(); numSheets++) {    
	            if (null != workbook.getSheetAt(numSheets)) {    
	                HSSFSheet sheet = workbook.getSheetAt(numSheets); //获得一个sheet    
	  
	                /**
	                 * 循环sheet页所有行
	                 */
	                for (int rowNumOfSheet = 1; rowNumOfSheet <= sheet.getLastRowNum(); rowNumOfSheet++) {    
	                	
	                	//存储每一行的资料
	                	Map<String,String> map = new HashMap<String,String>();
	                	
	                    if (null != sheet.getRow(rowNumOfSheet)) {   
	                    	
	                    	//获得一行 
	                        HSSFRow row = sheet.getRow(rowNumOfSheet);    
	  
	                        /**
	                         * 循环每一行的所有列
	                         */
	                        for (short cellNumOfRow = 0; cellNumOfRow <= row.getLastCellNum(); cellNumOfRow++) {    
	                            if (null != row.getCell(cellNumOfRow)) {   
	                            	
	                            	//获得列值
	                                HSSFCell cell = row.getCell(cellNumOfRow);     
	                                                                   
	                                //数字类型
	                                if(cell.getCellType() == HSSFCell.CELL_TYPE_NUMERIC){  
	                                	NumberFormat fomatter = new  DecimalFormat();
	                                	String[] dataList=fomatter.format(Double.parseDouble(String.valueOf(cell.getNumericCellValue()))).split(Constants.CONSTANT_DATA_SEPARATOR);
	                                	StringBuffer sb=new StringBuffer();
	                                	for (int i = 0; i < dataList.length; i++) {
											sb.append(dataList[i]);
										}
	                                	map.put(sheet.getRow(0).getCell(cellNumOfRow).getStringCellValue(), sb.toString());
	                                }else if(cell.getCellType() == HSSFCell.CELL_TYPE_BOOLEAN){    
	                                	map.put(sheet.getRow(0).getCell(cellNumOfRow).getStringCellValue(), String.valueOf(cell.getBooleanCellValue()));
	                                }else {    
	                                	map.put(sheet.getRow(0).getCell(cellNumOfRow).getStringCellValue(),cell.getStringCellValue());
	                                }    
	                            }    
	                        }  
	                    }    
	                    infomationList.add(map);
	                }    
	            }    
	        }  
		}catch(FileNotFoundException e){
			e.printStackTrace();
		}
		catch(IOException ioexception){
			ioexception.printStackTrace();
		}
        return infomationList;   
	}
分享到:
评论

相关推荐

    Java POI EXCEL导入导出

    Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出

    java_poi实现excel导入导出

    Java POI 实现 Excel 导入导出 Java POI 是一个流行的 Java 库,用于处理 Microsoft Office 文件格式,包括 Excel 文件。在本文中,我们将详细介绍如何使用 Java POI 实现 Excel 导入导出功能。 1. 什么是 Java ...

    java_poi导入excel通用工具类

    这个"java_poi导入excel通用工具类"是利用Java的POI库和一些额外的技术来实现对Excel数据的导入功能,使得开发人员能够方便地将Excel数据转化为Java对象或者对已有对象进行填充。下面我们将深入探讨相关的知识点。 ...

    java poi Excel导入导出示例

    总之,Apache POI 是Java开发人员处理Excel文件的强大工具,无论是导入数据进行分析,还是导出数据生成报告,都能轻松应对。通过熟悉其API,你可以构建出复杂的Excel处理功能,满足各种业务需求。

    java_poi导入excel通用工具类V0915

    "java_poi导入excel通用工具类V0915" 提供了一种通用的方式来处理Excel数据的导入工作,它支持多种赋值方式,包括单个对象、列表对象以及指定坐标的赋值。 首先,让我们深入理解一下这个工具类的主要功能: 1. **...

    Java poi 实现excel导入导出

    在提供的“java-excel导入导出”压缩包中,可能包含了示例代码、说明文档以及测试数据,可以帮助初学者快速理解和使用Java POI进行Excel操作。通过学习和实践这些示例,你可以掌握Java POI库的基本用法,并能灵活...

    Java 使用poi导入excel 并使用xml做数据验证

    总结来说,这个项目展示了如何利用Java的Apache POI库读取Excel数据,结合XML解析进行数据验证,最后将验证通过的数据导入到数据库。这个过程涉及到文件I/O、XML处理、数据验证、数据库操作等多个核心Java技术,对于...

    java poi操作excel批量导入导出项目需要的jar包

    Java中的Apache POI库是处理...以上是Java POI操作Excel的基本概念和关键点,理解并熟练运用这些知识点,你就可以在项目中高效地进行批量导入导出操作了。记住,持续学习和适应新的库版本是保持技术领先的关键。

    POI导入excel大数据处理,支持excel2003,2007

    标题提到的“POI导入excel大数据处理”是指利用Apache POI进行大量Excel数据的导入操作,同时它兼容Excel 2003(.xls格式)和2007以上版本(.xlsx格式)的文件。 POI库的主要优点包括: 1. **多格式支持**:不仅...

    java 利用POI 导入导出Excel

    前几天项目上需要加上导入导出,在网上找了一下,么有...于是自己写,源码里所需要的jar都有,从jsp界面进行Excel的导入导出,并可用于上传和下载。如有所用,喜不自禁,分享,开源的意义。 写的不是特别好,不喜勿喷!

    Java poi导入导出EXCEL工具类(兼容各版本)

    概述:Java poi导入导出EXCEL工具类(兼容各版本) 一、功能说明 允许同时导入或导出多个sheet,同一sheet可同时存在多个数据块,按数据块划分处理数据。 二、配置文件示例及详细说明 1、导入xml配置示例如下(见...

    java poi 导入大数据量Excel数据 防止内存溢出处理.zip

    Java中的Apache POI库是用于读取和...通过以上策略,可以有效地处理Java POI在导入大数据量Excel时的内存溢出问题,同时提高程序的运行效率。在实践中,应根据具体场景选择合适的优化方法,确保程序的稳定性和性能。

    POI实现Excel导入导出并附带加载进度条

    Apache POI是一个强大的库,它允许开发者使用Java来读取、写入和修改Microsoft Office格式的文件,包括Excel(.xlsx, .xls)。本项目通过Apache POI实现了Excel的导入与导出功能,并在操作过程中加入了进度条展示,...

    poi操作Excel导入导出(web项目)

    Excel导入通常用于将用户上传的Excel文件中的数据读取到系统中。关键步骤如下: - 文件上传:使用Servlet或类似库处理用户上传的Excel文件,将其保存到服务器的某个位置。 - 读取文件:创建`Workbook`对象,传入...

    java实现Excel导入(POI)

    **六、Excel导入的优化** 1. **内存管理**:大量数据可能导致内存溢出,可以考虑分批读取或使用SXSSF(一个内存效率更高的API)。 2. **错误处理**:在处理Excel数据时,可能遇到格式错误、空值等问题,需要设置...

    java_poi导入 excel

    这篇博文链接虽然没有提供具体内容,但我们可以根据“java_poi导入excel”这个主题深入探讨Java POI库在Excel导入方面的应用。 首先,Java POI 提供了HSSF(用于老版本的BIFF格式,如.xls)和XSSF(用于新版本的...

    Java操作Excel之Poi模板导入导出

    在"Java操作Excel之Poi模板导入导出"这个主题中,我们将深入探讨如何使用POI库来处理Excel模板,并进行数据的导入和导出。 首先,了解Excel模板的基本概念。模板通常包含预定义的样式、格式和计算,开发人员可以...

    Excel Java POI导入导出示例

    本示例将详细讲解如何使用Java和Apache POI库进行Excel的导入与导出操作。 首先,你需要在项目中引入Apache POI的Jar包。在提供的压缩包中,应该包含了用于此目的的POI库。确保将这些库添加到你的项目类路径中,...

Global site tag (gtag.js) - Google Analytics