定义模版
以下列举所有表达式:
表达式 | 描述/示例 |
---|
三目运算 | {{test ? obj:obj2}}test如果某一个字段,则该字段一定是布尔类型,如果一个表达式,如arg == 1则一定要带有空格 |
n: | 这个cell是数值类型 {{n:}} |
le: | 代表长度{{le:()}} 在if/else 运用{{le:() > 8 ? obj1 : obj2}} |
fd: | 格式化时间 {{fd:(obj;yyyy-MM-dd)}} |
fn: | 格式化数字 {{fn:(obj;###.00)}} |
fe: | 遍历数据,创建row |
!fe | 遍历数据不创建row |
$fe: | 下移插入,把当前行,下面的行全部下移.size()行,然后插入 |
#fe: | 横向遍历 |
v_fe: | 横向遍历值 |
!if: | 删除当前列 {{!if:(test)}} |
单引号 | 表示常量值 ‘’ 比如’1’ 那么输出的就是 1 |
&NULL& | 空格 |
]] | 换行符 多行遍历导出 |
第一页

第二页

JAVA代码
开启配置
TemplateExportParams params = new TemplateExportParams("F:\\java\\static\\meter\\测试.xlsx");
params.setScanAllsheet(true);
示例代码
public static void main(String[] args) {
TemplateExportParams params = new TemplateExportParams("F:\\java\\static\\meter\\测试.xlsx");
params.setScanAllsheet(true);
System.out.println(params.getDataSheetNum());
HashMap<String, Object> data = new HashMap<>();
HashMap<String, String> list1 = new HashMap<>();
list1.put("name","李四");
list1.put("error","李四异常信息");
HashMap<String, String> list2 = new HashMap<>();
list2.put("name","张三");
list2.put("error","张三异常信息");
data.put("list", Arrays.asList(list1));
data.put("list2",Arrays.asList(list2));
FileOutputStream fileOutputStream = null;
try {
fileOutputStream = new FileOutputStream(new File("F:\\java\\static\\meter\\data.xlsx"));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
Workbook workbook = ExcelExportUtil.exportExcel(params, data);
try {
workbook.write(fileOutputStream);
} catch (IOException e) {
e.printStackTrace();
}
}
效果
第一页

第二页
