Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用xml标记的JXLS分组_Java_Xml_Jxls - Fatal编程技术网

Java 使用xml标记的JXLS分组

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

JXLS 2.x是否通过xml配置支持
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();
        }
    }
}