如何将多千条记录的管道分隔文件转换为mule中的XML

时间:2014-03-18 17:47:21

标签: java xml file mule

我有一个file inbound endpoint,其中会有一个管道分隔文件。该文件的第一行是标题,其余是记录。平均而言,将有40,000条记录使文件大小接近7MB。我需要将此文件转换为XML结构(文件中的标题与XML元素不同)。

将此文件转换为XML有什么好方法?我写了一个component,它接受​​input stream,逐行读取文件,对其进行标记,创建并写入XML文件。但在这种情况下,我保持文件连接打开很长时间,我必须小心关闭文件流并移动文件进行备份。

想知道可以通过其他方式做什么?是否有人使用Data Mapper用于类似目的?

1 个答案:

答案 0 :(得分:1)

DataMapper的Mule文档说明" DataMapper只能使用大约75 MB的RAM解析500 MB的CSV文件"如果你设置"流媒体" DataMapper配置中的属性。管道删除计为CSV,因为您可以配置分隔符。您也可以将其设置为忽略标题行。我会选择DataMapper,如果出现问题则发布另一个问题,并且只有当所有希望都失去时才会恢复为自定义组件。