Java 使用xml标记的JXLS分组
JXLS 2.x是否通过xml配置支持Java 使用xml标记的JXLS分组,java,xml,jxls,Java,Xml,Jxls,JXLS 2.x是否通过xml配置支持groupBy 原因是,我有一个非常基本的分组示例,它可以处理excel注释,但当我通过xml标记使用相同的配置时,它根本不起作用。输出excel已分组,但每组下没有数据 我在网上也找不到任何工作示例,因此我的语法可能有问题(见下文),或者JXLS 2.x中不支持通过xml标记的groupBy excel注释(这很有效!) 详细信息\u config.xml xml配置(不起作用!) 加载xml配置的Java代码 public static void
groupBy
原因是,我有一个非常基本的分组示例,它可以处理excel注释,但当我通过xml标记使用相同的配置时,它根本不起作用。输出excel已分组,但每组下没有数据
我在网上也找不到任何工作示例,因此我的语法可能有问题(见下文),或者JXLS 2.x中不支持通过xml标记的groupBy
excel注释(这很有效!)
详细信息\u config.xml xml配置(不起作用!)
加载xml配置的Java代码
public static void main(String args[]) throws IOException {
List<ClockInOut> clockInOuts;
clockInOuts = loadCSV();
InputStream is = GroupingDemo.class.getResourceAsStream("detail_template.xlsx");
try (OutputStream os = new FileOutputStream("target/detail.xlsx")) {
Transformer transformer = TransformerFactory.createTransformer(is, os);
try (InputStream configInputStream = GroupingDemo.class.getResourceAsStream("detail_config.xml")) {
AreaBuilder areaBuilder = new XmlAreaBuilder(configInputStream, transformer);
List<Area> xlsAreaList = areaBuilder.build();
Area xlsArea = xlsAreaList.get(0);
Context context = new Context();
context.putVar("clockinouts", clockInOuts);
xlsArea.applyAt(new CellRef("Template!A1"), context);
transformer.write();
}
}
}
publicstaticvoidmain(字符串args[])引发IOException{
列出时钟输出;
clockInOuts=loadCSV();
InputStream=GroupingDemo.class.getResourceAsStream(“detail_template.xlsx”);
try(OutputStream os=newfileoutputstream(“target/detail.xlsx”)){
Transformer Transformer=TransformerFactory.createTransformer(is,os);
try(InputStream configInputStream=GroupingDemo.class.getResourceAsStream(“detail\u config.xml”)){
AreaBuilder AreaBuilder=新的XmlAreaBuilder(configInputStream,transformer);
列表xlsAreaList=areaBuilder.build();
面积xlsArea=xlsAreaList.get(0);
上下文=新上下文();
putVar(“clockinouts”,clockinouts);
xlsArea.applyAt(新的CellRef(“模板!A1”),上下文);
transformer.write();
}
}
}
基于,XML标记似乎只支持项
、变量
、目录
和参考
属性,因此上述行为是预期的。在JXLS存储库中引发了一个问题,因此希望在将来的版本中能够解决这个问题
目前,Excel标记似乎是前进的方向
public static void main(String args[]) throws IOException {
List<ClockInOut> clockInOuts;
clockInOuts = loadCSV();
InputStream is = GroupingDemo.class.getResourceAsStream("detail_template.xlsx");
try (OutputStream os = new FileOutputStream("target/detail.xlsx")) {
Transformer transformer = TransformerFactory.createTransformer(is, os);
try (InputStream configInputStream = GroupingDemo.class.getResourceAsStream("detail_config.xml")) {
AreaBuilder areaBuilder = new XmlAreaBuilder(configInputStream, transformer);
List<Area> xlsAreaList = areaBuilder.build();
Area xlsArea = xlsAreaList.get(0);
Context context = new Context();
context.putVar("clockinouts", clockInOuts);
xlsArea.applyAt(new CellRef("Template!A1"), context);
transformer.write();
}
}
}