`
weiweichen1985
  • 浏览: 141034 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

poi之WEB生成xls

    博客分类:
  • java
阅读更多
	String str = request.getParameter("str");
		str = URLDecoder.decode(str, "utf-8");
		String[] arr = str.split(",");
		try {
			HSSFWorkbook wb = new HSSFWorkbook();
			HSSFSheet sheet = wb.createSheet("第一个xls");
			
			
			HSSFCellStyle cellStyle = wb.createCellStyle();     //字体用的风格
			cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); //左右居中    
			cellStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); //上下居中 
			cellStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框 
			cellStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN); //左边框     
			cellStyle.setBorderRight(HSSFCellStyle.BORDER_THIN); //右边框     
			cellStyle.setBorderTop(HSSFCellStyle.BORDER_THIN); //上边框 
			cellStyle.setWrapText(true);
			HSSFFont cellFont5 = wb.createFont();
			cellFont5.setFontHeightInPoints((short) 10); //字号
			cellFont5.setFontName("宋体");      //设置为宋体
			cellStyle.setFont(cellFont5);
			
			
			
			HSSFRow rowi = sheet.createRow(0);   //第一行
			rowi.setHeight((short)800);
			HSSFCell celli = rowi.createCell((short) 0);
	        celli.setEncoding(HSSFCell.ENCODING_UTF_16);
	        HSSFCell cellmy = null;
	        for (int i = 0; i < 4; i++) {
				cellmy = rowi.createCell((short) i);
				cellmy.setCellStyle(cellStyle);
			}
	        celli.setCellValue("生成Excel文件");
	        celli.setCellStyle(cellStyle);
	        sheet.addMergedRegion(new Region(0, (short) 0, 0, (short)4));
			
			
			HSSFRow row = sheet.createRow(1); // 第一行标题

			String[] titles = { "姓名", "年龄", "QQ", "Email" };
			HSSFCell cell = null;
			for (short i = 0; i < titles.length; i++) {
				cell = row.createCell(i);
				cell.setCellValue(titles[i]);
			}

			row = sheet.createRow(2); // 第二行
			for (short i = 0; i < arr.length; i++) {
				cell = row.createCell(i);
				cell.setCellValue(arr[i]);
			}

			SimpleDateFormat timeformat = new SimpleDateFormat("yyyyMMddHHmmss");
			java.util.Date date = Calendar.getInstance().getTime();
			String createdate = timeformat.format(date).toString();

			int location = (int) (Math.random() * 100); // 100中取出一个

			String fileDirectory = request.getRealPath("/") + "/xls";
			FileOutputStream fileOut = new FileOutputStream(fileDirectory
					+ File.separator + createdate + "" + location + ".xls");
			wb.write(fileOut);
			fileOut.flush();
			fileOut.close();
			String fileName = fileDirectory + File.separator + createdate + ""
					+ location + ".xls";
			// System.out.println("文件名" + fileName);

			// 新建一个SmartUpload对象

			SmartUpload su = new SmartUpload();

			su.initialize(this.getServletConfig(), request, response);

			su.downloadFile(fileName, "application/vnd.ms-excel");// 用浏览器打开

		} catch (Exception e) {
			e.printStackTrace();

		}

<%@ page language="java" pageEncoding="gbk"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>


		<title>My JSP 'index.jsp' starting page</title>
		<meta http-equiv="pragma" content="no-cache">
		<meta http-equiv="cache-control" content="no-cache">
		<meta http-equiv="expires" content="0">
		<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
		<meta http-equiv="description" content="This is my page">
		<meta http-equiv="content-type" content="text/html; charset=gbk">
		<script type="text/javascript">
		
	function  generateExcel(e){

		// 去掉字符两端的空白字符
String.prototype.Trim = function()
{
    return this.replace(/(^\s*)|(\s*$)/g, "");
}


		var str="";
		var ele=null;
		var tr=null;
		if(document.all){
			ele=event.srcElement;
			tr=ele.parentElement.parentElement;
		}else{
			ele=e.target;
			tr=ele.parentNode.parentNode;
		}



		 
		var len=tr.childNodes.length;
		//alert(len);
		for(var i=0;i<len-1;i++){
			var child=tr.childNodes[i];
			if(document.all){
			str+=child.innerText.Trim()+",";
			}else{
			    if(child.tagName){
				    if(child.textContent!=null){
						str+=child.textContent.Trim()+",";
					}
					//alert(child.textContent);
				}
			}
		}
		//alert(str);
		str=str.substr(0,str.length-1);
		 
		//alert(str);
		
		str=encodeURI(str);
		str=encodeURI(str);
		
		document.location="makeExcel?str="+str;
	}
		</script>
	</head>

	<body>
		<table border="1" cellspacing="0" cellpadding="6">
			<tr>
				<td>
					姓名
				</td>
				<td>
					年龄
				</td>
				<td>
					QQ
				</td>
				<td>
					Email
				</td>
				<td>
					操作
				</td>
			</tr>
			<tr>
				<td>
					张三
				</td>
				<td>
					18
				</td>
				<td>
					359951165
				</td>
				<td>
					weiweichen_666@126.com
				</td>
				<td>
					<input type="button" value="生成excel文件"
						onClick="generateExcel(event)"></input>
				</td>
			</tr>
			<tr>
				<td>
					李四
				</td>
				<td>
					21
				</td>
				<td>
					2221311
				</td>
				<td>
					weiweichen_8888@126.com
				</td>
				<td>
					<input type="button" value="生成excel文件"
						onClick="generateExcel(event)"></input>
				</td>
			</tr>
			<tr>
				<td>
					李四光
				</td>
				<td>
					100
				</td>
				<td>
					1234567
				</td>
				<td>
					siguang@163.com
				</td>
				<td>
					<input type="button" value="生成excel文件"
						onClick="generateExcel(event)"></input>
				</td>
			</tr>
			<tr>
				<td>
					小飞
				</td>
				<td>
					32
				</td>
				<td>
					2322223
				</td>
				<td>
					ssss@222.com
				</td>
				<td>
					<input type="button" value="生成excel文件"
						onClick="generateExcel(event)"></input>
				</td>
			</tr>
			<tr>
				<td>
					叶无道
				</td>
				<td>
					20
				</td>
				<td>
					7654321
				</td>
				<td>
					wwww@222.com
				</td>
				<td>
					<input type="button" value="生成excel文件"
						onClick="generateExcel(event)"></input>
				</td>
			</tr>

		</table>
	</body>
</html>
分享到:
评论
3 楼 yose 2010-01-06  
楼主用的哪些包?怎么不列出来捏?
2 楼 yose 2010-01-06  
感谢楼主~··
1 楼 cn_arthurs 2008-11-28  
顶啊,

相关推荐

    WEB按模板导出到XLS报表

    在ASP中,`expRep.asp`很可能是一个处理报表导出的脚本文件,负责接收请求、处理数据并生成XLS文件。 2. **数据处理**:首先,Web应用需要从数据库或其他数据源中获取数据。这可能涉及到SQL查询来筛选和组织数据。...

    java poi操作word模版文件生成表单和修改

    Java POI 是一个开源库,专门用于处理Microsoft Office格式的文件,如Word(.doc, .docx)、Excel(.xls, .xlsx)等。在Java应用中,它被广泛用于读取、创建、更新和修改这些文件。在这个场景中,我们将重点讨论如何...

    java POI生成word.zip

    - Java POI 是一套API,用于处理Microsoft Office格式的文件,如Excel (.xls), Word (.doc), PowerPoint (.ppt)等。 - 它提供了一种与Office格式兼容的方式来操作这些文件,使得开发者可以在不依赖Microsoft ...

    POI生成Excel POI操作Excel POI读取Excel POI类库

    在Web项目中,这种功能通常用于数据导入导出,报表生成,或者任何需要与用户交换表格数据的场景。 **POI生成Excel** 生成Excel文件主要涉及以下步骤: 1. **创建Workbook对象**:这是Excel文件的顶级容器,可以是...

    struts2 poi 导入xls xlsx 绝对兼容

    Struts2是一个流行的MVC框架,用于构建动态、灵活的Web应用,而Apache POI是一个Java API,允许开发者读取、写入和修改Microsoft Office格式的文件,包括xls和xlsx(Excel的旧版和新版格式)。 **Struts2框架** ...

    POI实现word和excel在线预览

    在IT行业中,Apache POI是一个广泛使用的库,主要用于读取、写入Microsoft Office格式的文件,包括Word(.doc/.docx)和Excel(.xls/.xlsx)文档。本项目提供的"POI实现word和excel在线预览"是基于Apache POI的一个...

    JAVA用POI生成Word文档

    通过这种方式,你可以利用Apache POI库在Java应用中生成Word文档,并通过Web服务提供下载。这在生成报告、自动化文档创建或自定义业务需求中非常有用。记得在实际项目中处理好异常,确保文件操作的安全性,并根据...

    POIjar包,poi

    【描述】:“poijar包可以用于Java程序,特别是对于Java程序的Web开发中的报表生成。” 【详细知识点】 Apache POI 是一个流行的开源项目,它允许Java开发者读取、写入以及操作Microsoft Office格式的文件,如Word...

    poi导出excel表格

    本教程将详细讲解如何使用Apache POI在Web环境中导出Excel表格,避免生成不必要的临时文件,从而优化系统资源管理。 一、Apache POI简介 Apache POI 是一个开源项目,它提供了Java API来处理Microsoft的Office格式...

    poi 导出EXCEL 例子

    如果`poi_struts1.java`是示例代码的一部分,那么它可能与Struts1框架集成有关,Struts1是一个较老的MVC框架,用于构建Java Web应用程序。在Struts1中,你可以使用ActionForm对象和业务逻辑组件来收集和处理数据,...

    jsp利用POI生成Excel并在页面中导出的示例.docx

    本示例将详细介绍如何在JSP中利用POI库生成Excel文件,并直接在浏览器中导出。 首先,确保在项目中已经引入了Apache POI的依赖库。POI提供了对Excel 2003(HSSF)和Excel 2007以上版本(XSSF)的支持。在这个示例中...

    Java使用poi jar包读取以及web下载excle文件

    Apache POI 是一个流行的开源库,允许Java程序读写Microsoft Office格式的文件,包括Excel(.xlsx 和 .xls)。本教程将详细介绍如何使用POI库在Java中读取Excel文件,并通过Web服务器提供给用户下载。 首先,我们...

    POI导出Excel文件

    Apache POI是一个流行的Java库,用于读取和写入Microsoft Office格式的文件,尤其是Excel(.xlsx和.xls)文件。这个实例提供了两种方法来导出Excel文件:通过Servlet和通过main方法。这两种方法都是在Java环境中操作...

    poi解析jsp上传的excel文件并导入mysql(支持xls和xlsx)

    标题 "poi解析jsp上传的excel文件并导入mysql(支持xls和xlsx)" 涉及的是一个Java Web项目,利用Apache POI库处理用户通过JSP上传的Excel文件,并将数据存储到MySQL数据库中。Apache POI是Java平台上的一个开源项目...

    poi-tl引擎实现world模板内容替换(支持docx)

    在实际开发中,可以结合Spring Boot或其他Web框架,将这个功能集成到服务器端,接收前端请求,动态生成并返回Word文档,提高工作效率。 总的来说,poi-tl库为Java开发者提供了一个强大的工具,能够便捷地处理Word...

    POI-3.7+3.8jar包

    - 自动化报告生成:在Java后台系统中,POI可以用来动态生成Excel报表。 - 数据分析:从Excel文件中提取数据进行进一步的处理和分析。 - 文档转换:将Excel数据转换为其他格式,如CSV或数据库记录。 - 数据导入...

Global site tag (gtag.js) - Google Analytics