XLSTransformer生成excel文件简单演示样例「建议收藏」

XLSTransformer生成excel文件简单演示样例「建议收藏」项目结构图:项目中所用到的jar,能够到http://www.findjar.com/index.x下载ExcelUtil类源代码:packageutil;importjava.io.IOExce

大家好,又见面了,我是你们的朋友全栈君。

项目结构图:

项目中所用到的jar,能够到http://www.findjar.com/index.x下载

XLSTransformer生成excel文件简单演示样例「建议收藏」

ExcelUtil类源代码:

package util;

import java.io.IOException;
import java.net.URL;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import net.sf.jxls.exception.ParsePropertyException;
import net.sf.jxls.transformer.XLSTransformer;
/**
 * Excel生成类.
 */
public class ExcelUtil {
	/**
	 * 依据模板生成Excel文件.
	 * @param templateFileName 模板文件.
	 * @param list 模板中存放的数据.
	 * @param resultFileName 生成的文件.
	 */
	public void createExcel(String templateFileName, List<?> list, String resultFileName){
		//创建XLSTransformer对象
		XLSTransformer transformer = new XLSTransformer();
		//获取java项目编译后根路径
		URL url = this.getClass().getClassLoader().getResource("");
		//得到模板文件路径
		String srcFilePath = url.getPath() + templateFileName;
		Map<String,Object> beanParams = new HashMap<String,Object>();
		beanParams.put("list", list);
		String destFilePath = url.getPath() + resultFileName;
		try {
			//生成Excel文件
			transformer.transformXLS(srcFilePath, beanParams, destFilePath);
		} catch (ParsePropertyException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

}

Test类源代码:

package test;

import java.util.ArrayList;
import java.util.List;

import po.Fruit;
import util.ExcelUtil;
/**
 * 測试类.
 */
public class Test {

	public static void main(String[] args) {
		List<Fruit> list = new ArrayList<Fruit>();
		list.add(new Fruit("苹果",2.01f));
		list.add(new Fruit("桔子",2.05f));
		String templateFileName = "template/template.xls";
		String resultFileName = "result/fruit.xls";
		new ExcelUtil().createExcel(templateFileName,list,resultFileName);

	}

}

template.xls模板文件截图:

XLSTransformer生成excel文件简单演示样例「建议收藏」

注意:假设你是用的office 2007生成的excel模板,要另存为97-2003版本号的。

Fruit类源代码:

package po;
/**
 * 水果.
 */
public class Fruit {
	/**
	 * 水果名称.
	 */
	private String name;
	/**
	 * 水果价格.
	 */
	private float price;
	
	
	public Fruit() {
		super();
	}
	
	public Fruit(String name, float price) {
		super();
		this.name = name;
		this.price = price;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public float getPrice() {
		return price;
	}
	public void setPrice(float price) {
		this.price = price;
	}
	
}

生成fruit.xls文件截图:

XLSTransformer生成excel文件简单演示样例「建议收藏」

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155043.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 《剑指offer》– 斐波那契数列、跳台阶问题 、变态跳台阶问题、矩阵覆盖

    《剑指offer》– 斐波那契数列、跳台阶问题 、变态跳台阶问题、矩阵覆盖

    2021年9月26日
    66
  • describing people听力原文_你美国也配谈道德

    describing people听力原文_你美国也配谈道德  美国著名公司PeopleSoft,名字也代表旗下的一系列ERP产品,一系列的解决方案,有一整套的开发工具,04年被oracle以103亿美元收购。 在某银行的CRM,EPM项目中有幸认识Michaelzhou,非常感谢他的帮助,使我认识到底什么才是PeopleSoft,暂且不说PeopleSoft的产品有多好,本文仅讨论PeopleSoft的开发模式。 

    2025年6月9日
    3
  • SIGABRT 报错时的注意事项和解决方法

     SIGABRT报错,可以理解为安卓系统为保护自身安全,清理了你的应用,这样导致的应用崩溃,通常是在读取file或者结束某个逻辑操作时,没有及时的释放资源,这样会导致报错。我接触到这个崩溃问题,是因为需要多次频繁的加载webview时导致的,在ondestroy方法里,加上webview.destroy(),此时崩溃的次数明显减少,但是偶有崩溃,查找了网上很多答案,都未能解决问题,这时突然想到…

    2022年4月16日
    96
  • 小熊工厂 bt[通俗易懂]

    小熊工厂 bt[通俗易懂]Welcometomyblog!小熊工厂 软件大小:20986KB软件语言:简体中文软件类别:国产软件/共享版/趣味软件应用平台:Win9x/NT/2000/XP/2003界面预览:无插件情况: 投诉更新时间:2006-09-2214:55:33下载次数:4426推荐等级:联系人:ricky408163.com开发商:小熊工厂

    2022年6月13日
    33
  • jsonObject转map_json字符串转jsonobject对象

    jsonObject转map_json字符串转jsonobject对象Map转JSONObject<!–https://mvnrepository.com/artifact/com.alibaba/fastjson–><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.59</version></depende

    2022年9月28日
    2
  • jediscluster api_java.lang.throwable

    jediscluster api_java.lang.throwable由于redis的集群rediscluster不支持keys这样的多key操作(具体原因由于sharding后,不同的key属于不同的slot,难以支持原子操作)。所以如果一个对外需要对缓存做失效处理时比较棘手。所以本类提供工具方法再rediscluster查找按照hashTags处理的keys和一般的keys。基于jediscluster实现。有优化空间,现在懒得改了importjav…

    2022年10月14日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号