excel - Apache nifi:当每行具有不同的单元格长度时,无法将 excel 解析为 csv
问题描述
我正在尝试使用 Apache Nifi 将一个 Excel 转换为 CSV。当第一行包含信息的单元格值少于文档的其他行时(例如,第一行有 5 个单元格,第 2 个 -> 8 个单元格,第 5 个 -> 7 个单元格),文档的解析只需要考虑到第一行 (5) 的单元格数。所以我丢失了信息(在示例情况下,第 2 行将丢失 3 个单元格值,第 5 行将丢失 2 个)。
另一个视觉示例:
我的流程配置如下:
谁能告诉我如何解决这个问题?
解决方案
@Jaime - NiFI 处理器 ConvertExcelToCSVProcessor 做了一些你已经注意到的假设。它假定您在每一行中发送一组一致的数据。您的 Excel 不符合这些基本假设。
我最好的建议是修复 excel 表中的绝望数据。添加缺失的列,其中包含您以后可以删除/忽略的数据。唯一的其他选择是将处理器重新制作为自定义处理器,您可以让它检查每一行,获取具有最多列的行,将其用于列数。
推荐阅读
- java - java.lang.NoSuchMethodError: 'java.lang.String org.slf4j.helpers.Util.safeGetSystemProperty(java.lang.String)'
- excel - 如果存在则复制工作表,如果不存在则创建新文件
- flutter - 如何在颤动中隐藏MS Edge中密码输入的眼睛图标?
- angular - 子组件事件调用错误的父组件
- c++ - 在 firebase 函数中包含 bin 文件
- sql - 与 SQL 中的条件作斗争
- reactjs - getStaticPaths 用于在 nextjs 中捕获所有路由 [[...Id]].js 的动态路由
- c# - 在新行中按日期添加分组中的运行总和
- sql - 查询选定时间段内不存在事件的模型
- reactjs - 在反应中添加和编辑来自同一表单的数据