- 浏览: 192425 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
TheAngLee:
亲测有效,感谢
如何批量删除twitter的推文 and 批量取消关注 -
511093965:
你好,怎么下载的你的那个没有用啊?点击浏览没有反应,怎么回事呢 ...
使用SWFUpload和fileupload简化多文件上传(附源码) -
郑智睿:
关键是会话信息会丢失,这是个重大问题没解决
使用SWFUpload和fileupload简化多文件上传(附源码) -
郑智睿:
里面的文件不完整
使用SWFUpload和fileupload简化多文件上传(附源码) -
青青雨露:
不能运行啊
使用SWFUpload和fileupload简化多文件上传(附源码)
★、POI中很多组件并不是都能用上,根据需要选择自己需要的,我这里用到的就是SS(HSSF+XSSF)了,分别针对xls和xlsx,一般应该用HSSF就ok了,还是用office2003的人多一些
★、用的包大多数这个路径下的org.apache.poi.ss.usermodel
★、poi-examples-3.6-20091214.jar这个文件里面有例子,可以做个参照
★、如果处理的文件可能是xls也可能是xlsx的,怎么办?
方法1:处理前判断,然后分别用不同的方法去处理
方法2:使用接口操作,输出文件的时候,根据类型保存
★、参考网址:
http://poi.apache.org/
http://poi.apache.org/spreadsheet/quick-guide.html
http://developers.sun.com.cn/blog/functionalca/entry/java读写excel简介
★、写个demo,ExcelUtil.java
★、用的包大多数这个路径下的org.apache.poi.ss.usermodel
★、poi-examples-3.6-20091214.jar这个文件里面有例子,可以做个参照
★、如果处理的文件可能是xls也可能是xlsx的,怎么办?
方法1:处理前判断,然后分别用不同的方法去处理
方法2:使用接口操作,输出文件的时候,根据类型保存
//save workbook String file = "picture.xls"; if(wb instanceof XSSFWorkbook) file += "x"; FileOutputStream fileOut = new FileOutputStream(file); wb.write(fileOut); fileOut.close();
★、参考网址:
http://poi.apache.org/
http://poi.apache.org/spreadsheet/quick-guide.html
http://developers.sun.com.cn/blog/functionalca/entry/java读写excel简介
★、写个demo,ExcelUtil.java
package core.util; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.poifs.filesystem.POIFSFileSystem; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.junit.Test; import core.dao.DaoImpl; /** * Description: <br> * 2010-4-16 * * @author huxiao kskr@qq.com */ public class ExcelUtil { private static final String filepath = "F:/job/workspace_huxiao_new/_testpoi/src/test/file/workbook.xls"; /** * description: 把一个List生成为Excel<br> * * @param linkedList * @param file * 2010-4-16 * @author huxiao kskr@qq.com */ public static void list2excel(List<Map<String, String>> list, List<String> keyList, File file) { List<LinkedHashMap<String, String>> linkedList = new ArrayList<LinkedHashMap<String, String>>(); for (Map<String, String> map : list) { LinkedHashMap<String, String> tmpMap = new LinkedHashMap<String, String>(); for (String key : keyList) { tmpMap.put(key, map.get(key)); } linkedList.add(tmpMap); } if (!file.isDirectory()) { file.getParentFile().mkdirs(); } Workbook wb = new HSSFWorkbook(); Sheet sheet = wb.createSheet("Sheet1"); for (int i = 0; i < linkedList.size(); i++) { Row row = sheet.createRow(i); Map<String, String> map = linkedList.get(i); int column = 1; for (String key : map.keySet()) { Cell cell = row.createCell(column++); cell.setCellValue(map.get(key)); } } try { FileOutputStream fileOut = new FileOutputStream(file); wb.write(fileOut); fileOut.close(); } catch (Exception e) { System.out.println("生成文件出错"); e.printStackTrace(); } } /** * description: 读取一个Excel文件并返回List<br> * * @param keyList * @param file * @return 2010-4-19 * @author huxiao kskr@qq.com */ public static List<Map<String, String>> excel2List(List<String> keyList, File file) { if (!file.isFile()) { throw new RuntimeException(file + " 不存在"); } POIFSFileSystem fs = null; HSSFWorkbook wb = null; HSSFSheet sheet = null; try { fs = new POIFSFileSystem(new FileInputStream(file)); wb = new HSSFWorkbook(fs); sheet = wb.getSheetAt(0); } catch (IOException e) { System.out.println(file + "读取错误"); e.printStackTrace(); } List<Map<String, String>> resultList = new ArrayList<Map<String, String>>(); for (Row row : sheet) { Map<String, String> tmpMap = new HashMap<String, String>(); for (Cell cell : row) { int columnIndex = cell.getColumnIndex(); tmpMap.put(keyList.get(columnIndex - 1), cell.getStringCellValue()); } resultList.add(tmpMap); } return resultList; } /** * description: 测试生成Excel<br> * 2010-4-19 * * @author huxiao kskr@qq.com */ @Test public void testList2Excel() { List<Map<String, String>> list = new DaoImpl().queryForList("select * from user"); // 因为hashmap是无序的,所以在这里自定义key的顺序,根据这个keyList把hashMap转成LinkedHashMap再循环 // 当需求固定之后,可以直接写到配置文件里面,就不用手写了 List<String> keyList = new ArrayList<String>(); keyList.add("ID"); keyList.add("USERNAME"); keyList.add("PASSWORD"); list2excel(list, keyList, new File(filepath)); } /** * description: 测试excel2list<br> * * @param args * 2010-4-19 * @author huxiao kskr@qq.com */ @Test public void testExcel2List() { // 取出来的时候就不必按顺序啦,但是你要制定key是什么啊,否则怎么存储到map里面呢? // 不用担心,实际操作的时候这个东西可以从数据库或者配置文件中获取,不用每次手写的 List<String> keyList = new ArrayList<String>(); keyList.add("ID"); keyList.add("USERNAME"); keyList.add("PASSWORD"); List<Map<String, String>> list = excel2List(keyList, new File(filepath)); System.out.println(list); } }
发表评论
-
实现for each,通过iterable接口和iterator(实例)
2011-01-11 00:58 4670java1.5提供了for each的循环方式,实现i ... -
java的几个权限修饰符,private/friendly/protected/public
2010-05-29 23:26 7954下面开始测试: 一个Test类,作为被访问的类,priv ... -
算法:输出一串字符的全排列
2010-05-26 18:09 1935package test; import java. ... -
创建可执行jar
2010-05-23 20:00 1317把我们的程序打个jar包,双击运行,一般会弹出这个提示 ... -
笔试的时候一个折半查找写错了,这样写应该对了吧
2010-05-22 11:04 1397public int find(int[] abc, i ... -
写一个CookieUtil,方便使用cookies
2010-05-12 16:54 2486以前用cookies比较少,虽然知道大致上就是那么回事,但是一 ... -
循环Map的两种方法
2010-05-08 09:57 1513public static void main(String ... -
[正则]零宽断言:同事给我出了一题
2010-04-25 15:59 1567同事给我出一题,如下: public static v ... -
[转]Servlet、Filter的url-pattern问题
2010-04-17 11:00 1572servlet和filter的匹配规则 ... -
做个图片的防盗链
2010-04-13 11:31 9205目的是,网站本身的图片不防盗链,用户上传的图片不许外链 用户 ... -
Spring笔记(未完)
2010-04-09 19:12 951★、要使用的jar dist/spring.jar lib/ ... -
从html里面提取文本,只保留br和p
2010-04-09 19:00 3358从网上down了很多信息,但是带了一些不需要的table,di ... -
自定义错误页,并捕获异常到数据库
2010-04-09 18:44 1878web.xml中添加这一段,处理404等状态信息,注意是err ... -
TestBase64加解密
2010-04-09 11:22 1014package test; import java. ... -
TestIO
2010-03-31 09:47 1162package com.djwl.test.studyin ... -
分页条(部分)
2010-03-31 09:41 1010/** * description: 分页:根据每 ... -
ReflectTest
2010-03-31 09:40 1008package com.djwl.test.studying; ... -
CalendarTest
2010-03-31 09:39 1008package com.djwl.test.studying; ... -
Java正则备忘(附正则表达式查询表)
2010-03-22 16:01 1219A sample: /** * descript ... -
List2Array and Array2List
2010-03-18 10:05 1291/** * <p>功能描述:List2 ...
相关推荐
Apache POI是一个开源的Java库,专门用于读写Microsoft Office格式的文件,特别是Excel、Word和PowerPoint文档。在提供的描述中,我们看到的路径实际上是在指示Apache POI项目中的不同模块和示例代码的位置。 1. **...
附件是java poi 3.17的lib库及其依赖库,全部下载引用后,可以进行excel的读写操作,无需引用其他lib库。poi-3.17适用于jdk1.7。 Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft ...
总结来说,Apache POI 是Java开发中处理Excel文件的强大工具,它提供了全面的API来操作Excel的各种特性。结合 poi-3.9.jar、poi-ooxml-3.9.jar 和 poi-ooxml-schemas-3.9.jar 这三个库,开发者可以构建出功能丰富的...
标题中的"poi-ooxml-schemas-3.8,poi-3.8,poi-ooxml jar包合集"指的是Apache POI项目中用于处理Microsoft Office格式文件的Java库,特别是针对Excel(XLS和XLSX)文档的处理。Apache POI是一个流行的开源库,允许...
7. 导入导出:Apache POI提供了一套完整的API,用于将Java数据结构转换为Excel文件,或者从Excel文件中读取数据到Java对象。这使得它成为数据导入导出的强大工具,特别适用于数据分析、报表生成和自动化测试场景。 ...
在Java开发中,Apache POI库是一个非常重要的工具,它允许程序员读取、写入和修改Microsoft Office格式的文件,包括Excel(.xlsx/.xls)。本篇将详细讲解如何使用POI库在Java中生成Excel文档。 Apache POI是开源...
在Java项目中,若要使用Apache POI进行Excel操作,你需要将这三个jar文件添加到你的类路径中。以下是一个简单的示例,展示如何使用POI创建一个新的Excel工作簿: ```java import org.apache.poi.ss.usermodel.*; ...
Apache POI 是一个开源项目,专门用于处理微软...以上是关于Apache POI-3.16在Java中解析Excel的基本介绍和使用要点,通过这个库,开发者可以轻松地在Java应用程序中与Excel文件进行交互,实现数据的导入、导出和处理。
在给定的"poi-3.9(java操作excel需要的包)"中,我们聚焦于使用Apache POI来操作Excel。以下是关于Apache POI 3.9版本及其组件的详细知识: 1. **Apache POI**: Apache POI 是一个开源项目,由Apache软件基金会维护...
Apache POI - the Java API for Microsoft Documents。其中包括了开发多种应用的许多Java API: Component Application type Maven artifactId POIFS OLE2 Filesystem poi HPSF OLE2 Property Sets poi HSSF ...
Apache POI是Java平台上一个非常重要的开源库,它允许开发者使用纯Java代码来创建、读取和修改Microsoft Office格式的文件,包括Word(DOC、DOCX)、Excel(XLS、XLSX)以及PowerPoint(PPT、PPTX)等。这个库广泛...
Apache POI 是一个开源项目,专门用于...总的来说,Apache POI是Java开发中不可或缺的一个工具,它极大地拓宽了Java处理Microsoft Office文件的能力,让开发者能够在不依赖于Office软件的情况下实现文件的读写和操作。
Apache POI是一个流行的Java库,允许程序员创建、修改和显示MS Office文件,包括Excel工作簿。这个特定的.jar文件包含了基本的功能以支持.xls格式的Excel文件操作。 poi-ooxml-schemas-3.12-20150511-a.jar: 这个库...
在Java开发中,Apache POI库是处理Excel文件的重要工具,尤其在需要进行大量数据导入导出或自动化报告生成的场景下。"org.apache.poi-ooxml-schemas-3.9.jar" 是这个项目中的一个组件,它包含了用于解析和生成Open ...
总结来说,Apache POI 3.10.1版本的上传组件为Java开发者提供了一套强大的工具,用于处理和操作Microsoft Office的文件格式,涵盖了Excel、Word和PowerPoint的多种功能,大大提升了开发效率并扩展了应用的可能性。
"java excel poi"进一步明确了这个jar文件是与Java、Excel操作和Apache POI相关的。 在压缩包子文件的文件名称列表中,"poi-bin-5.2.2-20220312-excel"可能包含了示例或测试数据,帮助开发者了解如何使用Apache POI...
Apache POI 是一个开源项目,由Apache软件基金会维护,它主要致力于处理Microsoft Office格式的文件,如Word(.doc和.docx)、Excel(.xls和.xlsx)、PowerPoint(.ppt和.pptx)等。Apache POI 提供了Java API,使得...
标签:apache、jar包、java、中文文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
Java中的Apache POI库是用于处理Microsoft Office格式文件的强大工具,特别是Excel(.xls和.xlsx)文件。在Java编程环境中,POI库提供了一种高效且灵活的方式来读取、写入和修改Excel文档。在提供的压缩包中,我们有...
Apache POI是一个开源项目,主要用于处理Microsoft Office格式的文件,如Word(.doc/.docx)、Excel(.xls/.xlsx)和PowerPoint(.ppt/.pptx)。在本例中,我们关注的是与处理PowerPoint文件相关的部分,即"poi-...