XLSTransformer生成excel文件案例

XLSTransformer生成excel文件案例项目结构图:项目中所用到的jar,可以到http://www.findjar.com/index.x下载ExcelUtil类源码:packageutil;importjava.io.IOException;importjava.net.URL;importjava.util.HashMap;importjava.uti

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

项目结构图:

项目中所用到的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文件案例

本文转载于http://blog.csdn.net/csdnbenbenchong/article/details/7085124

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

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

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


相关推荐

  • Service Mesh详解

    Service Mesh详解ServiceMesh简介:这个词最早使用由开发Linkerd的Buoyant公司提出,并在内部使用。2016年9月29日第一次公开使用这个术语。2017年的时候随着Linkerd的传入,ServiceMesh进入国内技术社区的视野。最早翻译为“服务啮合层”,这个词比较拗口。用了几个月之后改成了服务网格。微服务(Microservices)是一种软件架构风格,它是以专注于单一责任与功能的小型功能区块(SmallBuildingBlocks)为基础,利用模块化

    2022年11月1日
  • sql对多个条件进行分组求和_分组求和法例题附答案

    sql对多个条件进行分组求和_分组求和法例题附答案在ireport中实现分组,求和。效果如下nametotalA2A3subtotal5B4B5subtotal9添加Document–>Variables–>VariableName建立自定义的求和函数设置相关属性。Ca…

    2022年9月4日
  • html表格内容居中对齐_word里表格怎么居中

    html表格内容居中对齐_word里表格怎么居中加上样式如:margin:0auto;<tablestyle=”margin:0auto;”><tr><td><span>账号:</span></td><td><inputtype=”text”v-model=’user’/></td></tr><tr><td>…

    2022年9月18日
  • JavaSript模块规范 – AMD规范与CMD规范介绍(转)

    JavaSript模块规范 – AMD规范与CMD规范介绍(转)

    2022年2月23日
  • CGLIB详解(最详细)

    CGLIB详解(最详细)转载地址:https://blog.csdn.net/danchu/article/details/70238002什么是CGLIBCGLIB是一个强大的、高性能的代码生成库。其被广泛应用于AOP框架(Spring、dynaop)中,用以提供方法拦截操作。Hibernate作为一个比…

    2022年6月11日
  • Python assert 断言函数「建议收藏」

    使用assert断言是学习python一个非常好的习惯,pythonassert断言句语格式及用法很简单。在没完善一个程序之前,我们不知道程序在哪里会出错,与其让它在运行最崩溃,不如在出现错误条件时就崩溃,这时候就需要assert断言的帮助。本文主要是讲assert断言的基础知识。pythonassert断言的作用pythonassert断言是声明其布尔值必须为真的判定,如果发生异

    2022年4月12日

发表回复

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

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