微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JxlExcel 模板定义读数据写数据生成excel模板 Java Excel 读写库

程序名称:JxlExcel 模板定义读数据写数据生成excel模板

授权协议: MIT

操作系统: 跨平台

开发语言: Java

JxlExcel 模板定义读数据写数据生成excel模板 介绍

JxlExcel 是基于jxl封装的java excel读写库,特性如下:

  • 可以像读写文件一样方便的读取数据和写入数据

  • 数据支持数组、map、bean三种方式

  • 支持xml配置excel模板

如何使用?

模板定义

在类路径下新建一个jxl-excel.xml的模板配置文件,输入如下的配置文件内容,即可定义一个excel模板。

<?xml version="1.0" encoding="UTF-8" ?>
<templates>
<template name="testRead">
    <titleRow>
        <titleCol span="6">span标题</titleCol>
    </titleRow>
    <titleRow>
        <titleCol>编制单位(盖章):</titleCol>
        <titleCol></titleCol>
        <titleCol span="3">编制日期:</titleCol>
        <titleCol>单位:元</titleCol>
    </titleRow>
    <titleRow>
        <titleCol>地区</titleCol>
        <titleCol>姓名</titleCol>
        <titleCol>身份证</titleCol>
        <titleCol>账号</titleCol>
        <titleCol>金额</titleCol>
        <titleCol>备注</titleCol>
    </titleRow>
    <daTarow>
        <dataCol>area</dataCol>
        <dataCol>name</dataCol>
        <dataCol>idCard</dataCol>
        <dataCol>bankAccount</dataCol>
        <dataCol>amount</dataCol>
        <dataCol>remark</dataCol>
    </daTarow>
</template>
</templates>
  • 模板(template)

template元素用于定义一个模板,包含一个属性name,用于唯一标识该模板

使用titleRow可以定义多行标题,每行标题又包含多个标题列(titleCol),标题列可以像html
table的td一样定义span属性,表示该列占用几列空间

  • 数据行(daTarow)

数据行用于定义Java bean或者Map中的属性在模板中的显示或读写顺序,数据行中的dataCol不支持span

读数据

InputStream is = JxlExcelReaderTest.class
            .getResourceAsstream("/testRead.xls");
reader.setExcelTemplate("testRead");
List<String[]> datas = reader.readArrays();
//List<Account> beans = reader.readBeans(Account.class);
//List<Map<String, Object>> maps = reader.readMaps();

写数据

File tmp = new File("testWriteData.xls");
if (tmp.exists()) {
tmp.delete();
}
tmp.createNewFile();
JxlExcelWriter jxlExcelWriter = new JxlExcelWriter(tmp);
jxlExcelWriter.setExcelTemplate("testRead");
List<String[]> accounts = new ArrayList<String[]>();
//省略测试数据生成...根据不同需要生成不同类型的数据
jxlExcelWriter.writeArrays(accounts);
//jxlExcelWriter.writeBeans(accounts);
//jxlExcelWriter.writeMaps(accounts);

生成excel模板

File tmp = new File("testWriteTemplate.xls");
if (tmp.exists()) {
tmp.delete();
}
tmp.createNewFile();
JxlExcelWriter jxlExcelWriter = new JxlExcelWriter(tmp);
jxlExcelWriter.setExcelTemplate("testRead");
jxlExcelWriter.writeTemplate();

JxlExcel 模板定义读数据写数据生成excel模板 官网

http://www.xetlab.com/blog/567e1edafd357e28f1664066

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

相关推荐