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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • native2ascii命令详解[通俗易懂]

    native2ascii命令详解[通俗易懂]1、native2ascii简介:native2ascii是sunjavasdk提供的一个工具。用来将别的文本类文件(比如.txt,.ini,.properties,.java等等)编码转为Unicode编码。为什么要进行转码,原因在于程序的国际化。Unicode编码的定义:Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。它为每种语言中的每个字符设定了统一并

    2022年9月12日
    0
  • 使用SQL游标进行循环插入数据「建议收藏」

    使用SQL游标进行循环插入数据「建议收藏」使用SQL游标进行循环插入数据–给新建页面添加权限控制declare@RoleIDvarchar(50)declare@Opratorvarchar(50)DECLAREAutoInsertRowCURSORFORSELECTdistinctRoleID,OperatorFROMeOPENAutoInsertRow;FETCHNEXTFROM

    2022年7月14日
    13
  • angular第一天

    angular第一天

    2022年2月21日
    54
  • Java 8 中 LocalDate 与Date 互相转换

    Java 8 中 LocalDate 与Date 互相转换//01.java.util.Date–>java.time.LocalDateTimepublicvoidUDateToLocalDateTime(){java.util.Datedate=newjava.util.Date();Instantinstant=date.toInstant();ZoneIdzone=ZoneId.systemDef…

    2022年10月3日
    0
  • hive的元数据存储在derby和mysql_桌面云必须部署的组件包括

    hive的元数据存储在derby和mysql_桌面云必须部署的组件包括搭建hive的环境需要hadoop的dfs和yarn可以正常运行的情况下。准备好apache-hive-1.2.1-bin.tar.gz和mysql-libs.zip两个包hive安装步骤:解压apache-hive-1.2.1-bin.tar.gz到/usr/local/src下,并且将其重命名为hivetar-zxvfapache-hive-1.2.1-bin.tar.gzmvapache-hive-1.2.1-binhive复制/hive/conf下的hive-en.

    2025年6月19日
    0
  • YUV格式到底是什么?

    YUV格式到底是什么?简介YUV是视频、图片、相机等应用中使用的一类图像格式,实际上是所有“YUV”像素格式共有的颜色空间的名称。与RGB格式(红-绿-蓝)不同,YUV是用一个称为Y(相当于灰度)的“亮度”分量和两个“色度”分量表示,分别称为U(蓝色投影)和V(红色投影),由此得名。YUV也可以称为YCbCr,虽然这些术语意味着略有不同,但它们往往会混淆并可互换使用。Y表示亮度分量:如果只显示Y的话,…

    2022年7月16日
    22

发表回复

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

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