我正在使用openpyxl读取Excel文档。由于我完全不了解的原因,在存储电子表格的ZIP存档中的xl / styles.xml中,两个单元格样式名称中都有一个ctrl-d:
public AssociateMapper{
Predicate<Status> status = (sts) -> null != sts &&null!=sts.getStatusType
&& "O|A|P".contains(sts.getStatusType());
@Mappings({
//some mappings
@Mapping(target = "statuses", expression = "java(associate.getStatuses().stream().filter(status).collect(Collectors.toList()))" )
})
Associate mapAssociate(Associate associate);
}
(两个名称中都是ctrl-D。)Openpyxl的<cellStyle name="^D" xfId="20" builtinId="53" customBuiltin="true"/>
<cellStyle name="^D 2" xfId="21" builtinId="53" customBuiltin="true"/>
函数在一定程度上扼杀了以下错误:
load_workbook
我考虑过的方法:
有什么想法/建议吗?
答案 0 :(得分:0)
拍摄任何人或任何人生成文件,因为这是无效的XML! ;-)向上游提交错误。
如果您可以在MS Excel中对其进行清理,那将很容易,否则您可以使用openpyxl的代码编写自己的预处理器:styles/stylesheet.py
将使您无需担心名称空间就可以阅读源代码,但是否则应该能够就地更改元素。样式表几乎从来没有那么大(某些库的确会产生大量带有垃圾的库)。