apache-camel - 向 Apache Camel 中的现有 CSV 数据添加新列和行
问题描述
我正在尝试将新的列和行/内容添加到现有的 CSV 数据中,但无法在 Apache Camel 中实现这一点我在代码中使用了 camel-csv 组件,下面是相同的代码段。
<unmarshal>
<csv delimiter="|" useMaps="true" lazyLoad="true" />
</unmarshal>
解组时,获取“org.apache.camel.dataformat.csv.CsvUnmarshaller$CsvIterator”作为类名,但无法获取交换或转换为此类的任何类型,因为这是抽象类。
让我知道我们是否可以使用 bean 组件和解决方案将列和内容添加到现有的 CSV 数据中。
解决方案
我可以建议一个替代解决方案。您可以使用 BeanIO 数据格式。
例如:
BeanIODataFormat dataFormat = new BeanIODataFormat("classpath:beanio/mappings.xml", "ContactsCSV");
from("direct:convert-to-csv")
.marshal(dataFormat)
.to("file:xxxx")
.end();
您可以在文档中找到检查数据格式的详细信息。那里也有一个示例文件。
推荐阅读
- r - R中数据框的2个相邻行中的字符串比较
- autolayout - UIAlertView 给出约束错误
- c# - 使用 # 重定向到页面中的 div
- c# - 在 asp.net core 中注册一个类型的实例到 ServiceCollection
- postgresql - 调用分配有数值的函数以进行查询
- tableau-api - 如何在 Tableau Online 中运行带有 .hyper 数据提取的 Tableau 工作簿?
- html - 在闪亮的 flowLayout 中创建动态数量的卡片元素
- c# - 如何为自定义按钮设置视觉状态
- javascript - 从点击事件的 JSON 循环中获取单个值 [jQuery/JavaScript]
- angular - Angular 6 订阅不会刷新 UI