- 浏览: 753156 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
lgh1992314:
a offset: 26b offset: 24c offse ...
java jvm字节占用空间分析 -
ls0609:
语音实现在线听书http://blog.csdn.net/ls ...
Android 语音输入API使用 -
wangli61289:
http://viralpatel-net-tutorials ...
Android 语音输入API使用 -
zxjlwt:
学习了素人派http://surenpi.com
velocity宏加载顺序 -
tt5753:
谢啦........
Lucene的IndexWriter初始化时的LockObtainFailedException的解决方法
使用poi3.9版本使用的示例
参考http://poi.apache.org/spreadsheet/quick-guide.html
import java.io.FileOutputStream; import java.io.IOException; import java.util.Calendar; import java.util.Date; import java.util.Iterator; import org.apache.poi.hssf.usermodel.HSSFHeader; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CellStyle; import org.apache.poi.ss.usermodel.ClientAnchor; import org.apache.poi.ss.usermodel.Comment; import org.apache.poi.ss.usermodel.CreationHelper; import org.apache.poi.ss.usermodel.DataFormat; import org.apache.poi.ss.usermodel.DateUtil; import org.apache.poi.ss.usermodel.Drawing; import org.apache.poi.ss.usermodel.Font; import org.apache.poi.ss.usermodel.Header; import org.apache.poi.ss.usermodel.Name; import org.apache.poi.ss.usermodel.RichTextString; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.util.CellRangeAddress; import org.apache.poi.ss.util.CellReference; import org.apache.poi.xssf.usermodel.XSSFWorkbook; //http://poi.apache.org/spreadsheet/quick-guide.html public class ExcelParseUtil { public static void test() throws IOException { Workbook wb = new HSSFWorkbook(); FileOutputStream fileOut = new FileOutputStream( "E:\\logs\\workbook.xls"); Sheet sheet1 = wb.createSheet("new sheet"); Sheet sheet2 = wb.createSheet("second sheet"); // 设置sheet的标题 Header header = sheet1.getHeader(); header.setCenter("Center Header"); header.setLeft("Left Header"); header.setRight(HSSFHeader.font("Stencil-Normal", "Italic") + HSSFHeader.fontSize((short) 16) + "Right w/ Stencil-Normal Italic font and size 16"); // 合并单元格 sheet1.groupRow(5, 14); sheet1.groupRow(7, 14); sheet1.groupRow(16, 19); sheet1.groupColumn((short) 4, (short) 7); sheet1.groupColumn((short) 9, (short) 12); sheet1.groupColumn((short) 10, (short) 11); sheet1.addMergedRegion(new CellRangeAddress(1, // first row (0-based) 1, // last row (0-based) 1, // first column (0-based) 2 // last column (0-based) )); // 设置图片 // Create the drawing patriarch. This is the top level container for all // shapes. // Drawing drawing = sheet1.createDrawingPatriarch(); // // //add a picture shape // ClientAnchor anchor = helper.createClientAnchor(); // //set top-left corner of the picture, // //subsequent call of Picture#resize() will operate relative to it // anchor.setCol1(3); // anchor.setRow1(2); // Picture pict = drawing.createPicture(anchor, pictureIdx); // // //auto-size picture relative to its top-left corner // pict.resize(); String sname = "TestSheet", cname = "TestName", cvalue = "TestVal"; Name namedCell = wb.createName(); namedCell.setNameName(cname); String reference = sname + "!A1:A1"; // area reference namedCell.setRefersToFormula(reference); // 2. create named range for a single cell using cellreference // Name namedCel2 = wb.createName(); // namedCel2.setNameName(cname); // reference = sname+"!A1"; // cell reference // namedCel2.setRefersToFormula(reference); // // // 3. create named range for an area using AreaReference // Name namedCel3 = wb.createName(); // namedCel3.setNameName(cname); // reference = sname+"!A1:C5"; // area reference // namedCel3.setRefersToFormula(reference); // // // 4. create named formula // Name namedCel4 = wb.createName(); // namedCel4.setNameName("my_sum"); // namedCel4.setRefersToFormula("SUM(sname+!$I$2:$I$6)"); // Note that sheet name is Excel must not exceed 31 characters // and must not contain any of the any of the following characters: // 0x0000 // 0x0003 // colon (:) // backslash (\) // asterisk (*) // question mark (?) // forward slash (/) // opening square bracket ([) // closing square bracket (]) // You can use // org.apache.poi.ss.util.WorkbookUtil#createSafeSheetName(String // nameProposal)} // for a safe way to create valid names, this utility replaces invalid // characters with a space (' ')" //设置单元格值 // Create a row and put some cells in it. Rows are 0 based. Row row = sheet1.createRow((short) 0); // Create a cell and put a value in it. Cell cell = row.createCell(0); cell.setCellValue(1); // Or do it on one line. row.createCell(1).setCellValue(1.2); row.createCell(2).setCellValue("This is a string"); row.createCell(3).setCellValue(true); Row row2 = sheet2.createRow(0); // Create a cell and put a date value in it. The first cell is not // styled // as a date. Cell cell2 = row2.createCell(0); cell2.setCellValue(new Date()); // we style the second cell as a date (and time). It is important to // create a new cell style from the workbook otherwise you can end up // modifying the built in style and effecting not only this cell but // other cells. //设置单元格日期格式 CellStyle cellStyle = wb.createCellStyle(); DataFormat format = wb.createDataFormat(); cellStyle.setDataFormat(format.getFormat("yyyy/mm/dd")); // style.setDataFormat(format.getFormat("#,##0.0000")); //设置单元格字体 Font font = wb.createFont(); font.setFontHeightInPoints((short) 24); font.setFontName("Courier New"); font.setItalic(true); font.setStrikeout(true); font.setBoldweight(Font.BOLDWEIGHT_BOLD); cellStyle.setFont(font); cellStyle.setWrapText(true); cell2 = row2.createCell(1); cell2.setCellValue(new Date()); cell2.setCellStyle(cellStyle); // you can also set date as java.util.Calendar cell2 = row2.createCell(2); cell2.setCellValue(Calendar.getInstance()); cell2.setCellStyle(cellStyle); // 註釋 // Create the comment and set the text+author CreationHelper factory = wb.getCreationHelper(); // When the comment box is visible, have it show in a 1x3 space ClientAnchor anchor = factory.createClientAnchor(); anchor.setCol1(cell.getColumnIndex()); anchor.setCol2(cell.getColumnIndex() + 1); anchor.setRow1(row.getRowNum()); anchor.setRow2(row.getRowNum() + 3); Drawing drawing = sheet1.createDrawingPatriarch(); Comment comment = drawing.createCellComment(anchor); RichTextString str = factory.createRichTextString("Hello, World!"); comment.setString(str); comment.setAuthor("Apache POI"); // Assign the comment to the cell cell.setCellComment(comment); // Hyperlink link = createHelper.createHyperlink(Hyperlink.LINK_URL); // link.setAddress("http://poi.apache.org/"); // cell.setHyperlink(link); // cell.setCellStyle(cellStyle); Row row3 = sheet2.createRow((short) 2); row3.createCell(0).setCellValue(1.1); row3.createCell(1).setCellValue(new Date()); row3.createCell(2).setCellValue(Calendar.getInstance()); row3.createCell(3).setCellValue("a string"); row3.createCell(4).setCellValue(true); row3.createCell(5).setCellType(Cell.CELL_TYPE_ERROR); //获取sheet的每个单元格的值 Sheet sheet = wb.getSheetAt(0); for (Iterator<Row> rit = sheet.rowIterator(); rit.hasNext();) { Row row4 = rit.next(); for (Iterator<Cell> cit = row4.cellIterator(); cit.hasNext();) { Cell cell4 = cit.next(); // do something here } } Sheet sheet5 = wb.getSheetAt(1); for (Row row5 : sheet5) { for (Cell cell5 : row5) { CellReference cellRef = new CellReference(row5.getRowNum(), cell5.getColumnIndex()); System.out.print(cellRef.formatAsString()); System.out.print(" - "); switch (cell5.getCellType()) { case Cell.CELL_TYPE_STRING: System.out.println(cell5.getRichStringCellValue() .getString()); break; case Cell.CELL_TYPE_NUMERIC: if (DateUtil.isCellDateFormatted(cell5)) { System.out.println(cell5.getDateCellValue()); } else { System.out.println(cell5.getNumericCellValue()); } break; case Cell.CELL_TYPE_BOOLEAN: System.out.println(cell5.getBooleanCellValue()); break; case Cell.CELL_TYPE_FORMULA: System.out.println(cell5.getCellFormula()); break; default: System.out.println(); } } } wb.write(fileOut); fileOut.close(); } public void test2() throws IOException { Workbook wb = new XSSFWorkbook(); FileOutputStream fileOut = new FileOutputStream("workbook.xlsx"); wb.write(fileOut); fileOut.close(); } public static void main(String[] args) throws IOException { test(); } }
输出:
A1 - 41258.65454309028 B1 - Sat Dec 15 15:42:32 CST 2012 C1 - Sat Dec 15 15:42:32 CST 2012 A3 - 1.1 B3 - 41258.65454322917 C3 - 41258.65454322917 D3 - a string E3 - true F3 -
发表评论
-
对字符串进行验证之前先进行规范化
2013-09-17 23:18 13947对字符串进行验证之前先进行规范化 应用系统中经常对字 ... -
使用telnet连接到基于spring的应用上执行容器中的bean的任意方法
2013-08-08 09:17 1471使用telnet连接到基于spring的应用上执行容器中 ... -
jdk7和8的一些新特性介绍
2013-07-06 16:07 10110更多ppt内容请查看:htt ... -
java对于接口和抽象类的代理实现,不需要有具体实现类
2013-06-12 09:50 2952原文链接:http://www.javaarch.net/j ... -
Excel2007格式分析和XML解析
2013-06-07 09:56 10728在物料清单采购中,用到excel上传文件解析功能,不 ... -
Java EE 7中对WebSocket 1.0的支持
2013-06-05 09:27 3837原文链接:http://www.javaarch.n ... -
java QRCode生成示例
2013-06-05 09:26 1510原文链接:http://www.javaarch.n ... -
Java Web使用swfobject调用flex图表
2013-05-28 19:05 1121Java Web使用swfobject调用 ... -
spring使用PropertyPlaceholderConfigurer扩展来满足不同环境的参数配置
2013-05-21 15:57 3332spring使用PropertyPlaceholderCon ... -
java国际化
2013-05-20 20:57 4472java国际化 本文来自:http://www.j ... -
RSS feeds with Java
2013-05-20 20:52 1214RSS feeds with Java 原文来自:htt ... -
使用ibatis将数据库从oracle迁移到mysql的几个修改点
2013-04-29 10:40 1674我们项目在公司的大战略下需要从oracle ... -
线上机器jvm dump分析脚本
2013-04-19 10:48 2905#!/bin/sh DUMP_PIDS=`p ... -
eclipse远程部署,静态文件实时同步插件
2013-04-06 20:18 5460eclipse 远程文件实时同步,eclipse远程 ... -
java价格处理的一个问题
2013-03-26 21:21 1829我们经常会处理一些价格,比如从运营上传的文件中将某 ... -
java 服务降级开关设计思路
2013-03-23 16:35 3764java 服务屏蔽开关系统,可以手工降级服务,关闭服 ... -
poi解析excel内存溢出
2013-03-20 22:21 6397真是悲剧啊,一个破内部使用系统20多个人使用的后 ... -
简单web安全框架
2013-03-16 11:56 1543web安全框架,主要用servlet filter方 ... -
基于servlet的简单的页面缓存框架
2013-03-11 19:27 1215基于servlet的页面级缓存框架的基本用法: 代码参考: ... -
Eclipse使用过程中出现java.lang.NoClassDefFoundError的解决方案
2013-02-01 17:22 1572如果jdk,classpath设置正确,突然在eclipse ...
相关推荐
Java POI导出图片到Excel示例代码详解 Java POI是Java开发中常用的开源库,用于读写Microsoft Office文件格式,包括Excel、Word、PowerPoint等。今天,我们将介绍如何使用Java POI将图片导出到Excel中。 标题解释 ...
Java POI 的主要特点是可以在 Java 应用程序中读取、写入和操作 Office 文件。 2. Java POI 的组成 Java POI 由多个组件组成,每个组件负责处理不同的 Office 文件格式。以下是 Java POI 的主要组件: * POIFS ...
二、Java POI操作Excel的核心功能 1. 创建新的Excel工作簿 使用`WorkbookFactory.create()`方法可以创建一个新的Excel工作簿对象,然后通过工作簿对象创建工作表。 2. 读取Excel工作簿 同样,使用`WorkbookFactory....
本示例将详细讲解如何使用Java和POI库来解析Excel文档。 首先,我们需要引入Apache POI的相关依赖。如果你使用的是Maven项目,可以在pom.xml文件中添加以下依赖: ```xml <groupId>org.apache.poi <artifactId>...
Java POI 操作 Excel 是一个常见的任务,在许多业务场景中都需要用到,比如数据导入导出、数据分析等。Apache POI 是一个流行的开源库,它允许开发者使用 Java 来读写 Microsoft Office 格式的文件,其中包括 Excel ...
本示例将详细讲解如何使用Java和Apache POI库进行Excel的导入与导出操作。 首先,你需要在项目中引入Apache POI的Jar包。在提供的压缩包中,应该包含了用于此目的的POI库。确保将这些库添加到你的项目类路径中,...
Java的Apache POI库是一个强大的工具,用于读取、创建和修改Microsoft Office格式的文件,尤其是Excel(.xlsx)文档。在本示例中,我们将深入探讨如何利用POI库来生成Excel中的图表曲线,这对于数据可视化和报告生成...
在Java世界中,如果你想对Excel进行读写操作,POI库是不可或缺的工具。下面将详细介绍如何使用Java POI来操作Excel以及相关的知识点。 1. **基本概念** - HSSF(Horrible Spreadsheet Format):这是POI库处理...
对于Excel操作,Java POI提供了HSSF(对应.xls文件)和XSSF(对应.xlsx文件)两个组件,分别用于处理不同版本的Excel文件。 ### 二、显示货币格式 在使用Java POI生成Excel时,为了使数据更易读和专业,我们经常...
"POI将word转HTML.zip"和"demo1.zip"可能包含具体的Java代码示例,用于演示如何实现Word到HTML的转换以及数据库数据导出到Excel的操作。解压后,开发者可以查看源代码并根据自己的需求进行调整和应用。 总结,Java...
在Java开发中,POI库被广泛用于生成、修改和读取Excel文档。本篇将深入探讨如何利用Apache POI来操作Excel模板,以及如何读取数据并将其填充到新生成的文件中,最终提供下载。 首先,你需要在项目中引入Apache POI...
Java中的Apache POI库是处理Microsoft Office文档的强大工具,尤其在Excel操作方面。它允许开发者在Java应用程序中创建、修改和读取Excel文件。在进行批量导入和导出Excel数据时,Apache POI是一个非常实用的选择。...
在这个示例中,我们将深入探讨如何使用Apache POI库进行Excel的导入和导出操作。Apache POI 提供了丰富的API,使得Java程序员可以在不依赖Microsoft Office的情况下读写Excel文件。 首先,让我们了解POI的基本概念...
本示例将详细讲解如何使用Apache POI进行Excel操作,涵盖从创建新的工作簿到添加数据、设置样式等各个方面。 首先,我们需要引入Apache POI的依赖。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml...
以上代码示例展示了如何使用Java POI库创建一个包含图片的Excel文件。你可以根据实际需求调整单元格、图片的位置和大小,以及图片的数量。如果你在实现过程中遇到问题,可以随时提问,我会尽我所能提供帮助。
这个链接提供了一个详细的Java代码示例,演示了如何使用POI导出Excel。在实际开发中,你可以根据这个示例调整代码以满足自己的需求,比如添加更多的数据处理逻辑或自定义样式。记得在导入项目时,确保包含上述提到的...
在提供的“java-excel导入导出”压缩包中,可能包含了示例代码、说明文档以及测试数据,可以帮助初学者快速理解和使用Java POI进行Excel操作。通过学习和实践这些示例,你可以掌握Java POI库的基本用法,并能灵活...
在Java世界中,Poi是解析和操作这些文件的首选工具,尤其在数据导入导出、自动化测试、数据分析等领域应用广泛。 Excel文件通常以.XLS或.XLSX格式存在,其中.XLS是早期版本的二进制格式,而.XLSX则是基于Open XML...
Java通过Apache POI库操作Excel是Java开发人员处理Microsoft Office文档的一种常见方法,特别是当需要在应用程序中生成、读取或修改Excel数据时。Apache POI是一个开源项目,提供了丰富的API,使得Java开发者能够...