`
紫_色
  • 浏览: 144331 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

java 使用POI操作Excel(1)----基本使用

    博客分类:
  • J2EE
阅读更多

      Apache的POI项目为我们提供了非常方便的操作Excel以及Microsoft的其它办公软件操作.

关于java操作Excel所需要的jar包如下:大家可以在apache网站下载得到.



 

下面演示使用POI简单读取Excel:

//Hello POI
	@Test
	public void testRead() {
		try {
			//第一步:创建工作对象
			Workbook wb = WorkbookFactory.create(new File("D:/Project/MAVEN_ANT/poi_1/excel/IT.xls")) ;  
			//第二步:使用工作对象获取工作溥
			Sheet sheet = wb.getSheetAt(0) ;
			//第三步:在工作溥对象中获取行
			Row row = sheet.getRow(0) ;
			//第四步:根据行获取列
			Cell cell = row.getCell(0) ;
			//注意在Excel是有类型的.
			/**
			 *  CELL_TYPE_BLANK Blank Cell type (3)
				CELL_TYPE_BOOLEAN Boolean Cell type (4)
				CELL_TYPE_ERROR Error Cell type (5)
				CELL_TYPE_FORMULA Formula Cell type (2)
				CELL_TYPE_NUMERIC Numeric Cell type (0)
				CELL_TYPE_STRING String Cell type (1)
			 */
			System.out.println(cell.getCellType()); //获取类型
			System.out.println(cell.getStringCellValue()); //获取数据
		} catch (InvalidFormatException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
 	}
	
	//遍历整个工作溥
	@Test
	public void testList() {
		try {
			Workbook wb = WorkbookFactory.create(new File("D:/Project/MAVEN_ANT/poi_1/excel/IT.xls")) ;
			Sheet sheet = wb.getSheetAt(0) ;
			//sheet.getFirstRowNum() ;  //获取第一行
			//sheet.getLastRowNum() ;  //获取最后一行
			
			//普通方法
			for(int i = 0; i < sheet.getLastRowNum(); i++) {
				Row row = sheet.getRow(i) ;
				//row.getFirstCellNum() ; //获取第一列
				//row.getLastCellNum() ; //获取最后一列
				for(int j = 0; j < row.getLastCellNum(); j++) {
					Cell cell = row.getCell(j) ;
					//getCellValue:方便,统计将读取的内容转为String类型
					System.out.print(getCellValue(cell) + "-----") ;
				}
				System.out.println() ;
			}
			
			//增强for
			for(Row row : sheet) {
				for(Cell cell : row) {
					System.out.print(getCellValue(cell) + "-----") ;
				}
				System.out.println() ;
			}
		} catch (InvalidFormatException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
 	}
	
	/**
	 * 获取读取的数据统一转为String
	 * @param cell Cell
	 * @return String
	 */
	private String getCellValue(Cell cell) {
		String value = null ;
		switch(cell.getCellType()) {
			case Cell.CELL_TYPE_NUMERIC :
				value = String.valueOf(cell.getNumericCellValue()) ;
				break ;
			case Cell.CELL_TYPE_STRING : 
				value = cell.getStringCellValue() ;
				break ;
			case Cell.CELL_TYPE_FORMULA :
				value = String.valueOf(cell.getCellFormula()) ;
				break ;
			case Cell.CELL_TYPE_BLANK : 
				value = "" ;
				break ;
			case Cell.CELL_TYPE_BOOLEAN :
				value = String.valueOf(cell.getBooleanCellValue()) ;
				break ;
			default :
				value = null ;
				break ;
		}
		return value ;
	}

 

 下面是关于Excel的写操作:

@Test
	public void testWrite() {
		Workbook workbook = new HSSFWorkbook() ;
		FileOutputStream fos = null ;
		try {
			fos = new FileOutputStream("D:/Project/MAVEN_ANT/poi_1/excel/poiTest.xls") ;
			Sheet sheet = workbook.createSheet("hello") ; //创建工作溥.
			Row row = sheet.createRow(0) ; //创建表格的第一行(从0开始)
			row.setHeightInPoints(30) ;  //设置行高
			Cell cell = row.createCell(0) ; //创建第一列
			CellStyle cellCss = workbook.createCellStyle() ;  //创建列样式
			cellCss.setAlignment(CellStyle.ALIGN_CENTER) ;
			cell.setCellValue("hll") ;
			cell = row.createCell(1) ;  //创建第二列
			cell.setCellValue("lfd") ;
			cell.setCellStyle(cellCss) ;
			workbook.write(fos) ;  //输出到Excel
		} catch (FileNotFoundException e) {
			e.printStackTrace();
			throw new RuntimeException("文件格式错误!请检查文件格式.") ;
		} catch (IOException e) {
			e.printStackTrace();
			throw new RuntimeException("找不到文件!") ;
		} finally {
			if(fos != null) {
				try {
					fos.close() ;
				} catch (IOException e) {
					e.printStackTrace();
					throw new RuntimeException("文件不能关闭") ;
				}
			}
		}
	}

 

 下面是该示例的项目(基于Maven建立):

http://www.kuaipan.cn/file/id_129263676497613792.htm

  • 大小: 17.6 KB
分享到:
评论

相关推荐

    java使用poi操作excel需要的所有jar包(poi3.8版本)

    java使用poi操作excel需要的所有jar包(poi3.8版本),里面有poi-3.8-20120326.jar、poi-ooxml-3.8-20120326.jar、poi-ooxml-schemas-3.8-20120326.jar、dom4j-1.6.1.jar、xmlbeans-2.3.0.jar

    Java开发案例-springboot-52-POI导出Excel-源代码+文档.rar

    Java开发案例-springboot-52-POI导出Excel-源代码+文档.rar Java开发案例-springboot-52-POI导出Excel-源代码+文档.rar Java开发案例-springboot-52-POI导出Excel-源代码+文档.rar Java开发案例-springboot-52-POI...

    java使用POI导出 Excel工具类

    java使用POI导出 Excel+图片工具类 ,里面含有poi jar包,只调用接口即可直接保存Excel。使用的时候需先把数据封装,具体包装需根据实际导出数据进行处理。文件demo中只提供包装格式。

    poi全家桶ooxml-schemas/poi/poi-examples/poi-ooxml/poi-ooxml-schemas/poi-scratchpad

    通过使用Apache POI,开发者可以在Java应用程序中实现与Excel的深度交互,比如创建复杂的表格、图表,执行公式计算,以及读取和修改现有文件。标签中的"poi excel 表格"明确指出,这里的重点是处理Excel文件,这在...

    java_poi实现excel导入导出

    在本文中,我们将详细介绍如何使用 Java POI 实现 Excel 导入导出功能。 1. 什么是 Java POI Java POI 是一个开源的 Java 库,由 Apache 软件基金会维护。它提供了一系列的 API,用于处理 Microsoft Office 文件...

    java excel操作 poi-3.17 可用于jdk1.70

    附件是java poi 3.17的lib库及其依赖库,全部下载引用后,可以进行excel的读写操作,无需引用其他lib库。poi-3.17适用于jdk1.7。 Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft ...

    java-poi-excel-导出20万条记录

    java-poi-excel-导出20万条记录

    poi-3.9、poi-ooxml-3.9、poi-ooxml-schemas-3.9

    总结来说,Apache POI 是Java开发中处理Excel文件的强大工具,它提供了全面的API来操作Excel的各种特性。结合 poi-3.9.jar、poi-ooxml-3.9.jar 和 poi-ooxml-schemas-3.9.jar 这三个库,开发者可以构建出功能丰富的...

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

    使用POI读取Excel数据的基本步骤如下: 1. 加载Excel文件:使用`WorkbookFactory.create()`方法创建一个`Workbook`实例。 2. 获取工作表:通过`Workbook`对象的`getSheetAt()`或`createSheet()`方法获取或创建工作...

    POI操作Excel----------(转人家的)

    在本文中,我们将深入探讨如何使用POI进行Excel操作,以及库中的关键概念和类。 首先,要使用POI,你需要从官方网站www.apache.org下载相应的jar包。主要的jar文件包括poi包、poi Browser包、poi hdf包和poi hssf...

    poi-3.12-android-a.jar和poi-ooxml-schemas-3.12-20150511-a.jar

    这个特定的.jar文件包含了基本的功能以支持.xls格式的Excel文件操作。 poi-ooxml-schemas-3.12-20150511-a.jar: 这个库是POI项目中的一个组件,特别涉及到对OOXML格式(如.xlsx文件)的支持。OOXML是Office Open ...

    java使用POI操作excel (支持excel2007)

    Java 使用Apache POI库操作Excel 2007文件详解 在Java开发中,处理Excel文件是一项常见的任务,特别是对于数据分析、数据导入导出或报表生成等场景。Apache POI是一个流行的开源库,它允许开发者读写Microsoft ...

    java 通过poi操作excel jar包

    标题中的"java通过poi操作excel jar包"指的是使用Apache POI库来处理Excel文件的Java程序,通常需要引入特定版本的POI JAR包。在这个案例中,我们有两个版本的JAR包可供使用:poi_3.17.jar和poi_3.15.jar。这些版本...

    java导出内容为excel poi-3.0.2-FINAL-20080204.jar

    Apache POI库是Java处理Microsoft Office格式文件(如Excel)的主要工具,这里提到的是POI的3.0.2版本,发布于2008年2月4日。这个版本的POI库已经足够处理大部分Excel导出的需求,但请注意,它可能不支持最新版Excel...

    java的poi生成excel图表demo

    Java的Apache POI库是一个强大的工具,用于读取、创建和修改Microsoft Office格式的文件,尤其是Excel(.xlsx)文档。在本示例中,我们将深入探讨如何利用POI库来生成Excel中的图表曲线,这对于数据可视化和报告生成...

    java使用poi操作excel

    Java 使用 Apache POI 操作 Excel 是一种常见的数据处理方式,特别是在大数据分析、报表生成和数据导入导出等场景中。Apache POI 是一个开源库,它允许 Java 开发者读写 Microsoft Office 格式,包括 Excel(.xlsx ...

    java poi 操作Excel

    下面将详细介绍如何使用Java POI来操作Excel以及相关的知识点。 1. **基本概念** - HSSF(Horrible Spreadsheet Format):这是POI库处理Excel 97-2003(.xls)格式的部分。HSSF提供了一套API,可以创建、修改和...

    poi-3.10.1上传组件jar包 po poi-ooxml poi-ooxml-schemas

    总结来说,Apache POI 3.10.1版本的上传组件为Java开发者提供了一套强大的工具,用于处理和操作Microsoft Office的文件格式,涵盖了Excel、Word和PowerPoint的多种功能,大大提升了开发效率并扩展了应用的可能性。

    java Excel文件 poi-bin-3.1-FINAL-20080629

    在3.1版本中,它可能包含了对Excel的基本操作支持,如创建、读取和修改工作簿、工作表、单元格等。 1. **工作簿(Workbook)**:在Apache POI中,一个Excel文件被抽象为一个Workbook对象。你可以通过`...

    Java Poi 操作excel的API 好用

    二、Java POI操作Excel的核心功能 1. 创建新的Excel工作簿 使用`WorkbookFactory.create()`方法可以创建一个新的Excel工作簿对象,然后通过工作簿对象创建工作表。 2. 读取Excel工作簿 同样,使用`WorkbookFactory....

Global site tag (gtag.js) - Google Analytics