Class ExcelUtil

java.lang.Object
cn.net.pap.common.excel.ExcelUtil

public class ExcelUtil extends Object
  • Constructor Details

    • ExcelUtil

      public ExcelUtil()
  • Method Details

    • getHeadMap

      public static Map<String,List<String>> getHeadMap(String fileAbsolutePath)
      获得表头信息
      Parameters:
      fileAbsolutePath -
      Returns:
    • getRowList

      public static List<Map<String,Object>> getRowList(String fileAbsolutePath, String sheetName, String indexNoConstantKey)
      根据传入的 excel 绝对路径,获取下方指定的 sheetName,并进行数据值获取,每一条数据增加一个名为 indexNoConstant 的顺序号(为null的话忽略顺序号)
      Parameters:
      fileAbsolutePath -
      sheetName -
      Returns:
      List 数据集合, 内部 map 有序(同 rowList 顺序)
    • getRowListWithMergeCell

      public static List<Map<String,Object>> getRowListWithMergeCell(String fileAbsolutePath, String sheetName, String indexNoConstantKey)
      同 getRowList , 增加了合并的单元格的数据重新维护的情况。 合并的单元格在读取数据之后,类似转平铺的效果,把null进行填充。
      Parameters:
      fileAbsolutePath -
      sheetName -
      indexNoConstantKey -
      Returns:
    • getOneToManyRowList

      public static List<Map<String,Object>> getOneToManyRowList(String sourceFileAbsolutePath, String sourceSheetName, String targetFileAbsolutePath, String targetSheetName, List<CompareDTO> fieldCompareDTOLists, String indexNoConstantKey, String childConstantKey)
    • convert2SimpleTriple

      public static List<SimpleTriple<String,String,Object>> convert2SimpleTriple(List<Map<String,Object>> rowMapList, String subjectMapKey, List<String> fileterMapKeyList)
      把从 excel 中读取的 rowMapList转换为三元组信息,其中 subjectMapKey 对应的数据当成主语
      Parameters:
      rowMapList - excel提取的数据
      subjectMapKey - 主语对应的key
      fileterMapKeyList - 需要过滤的map
      Returns:
    • groupByField

      public static Map<String,List<Map<String,Object>>> groupByField(List<Map<String,Object>> sourceRowList, List<String> sourceFieldList)