xml文件中同时满足多个条件_CSV/PSV/TSV与XML互相转换

总览

XML 是知行之桥用于处理工作流中数据的主要格式。 因此,将{{ page.file_format }}文件转换为XML 是作为工作流中进一步处理的过渡步骤,或者在操作XML 之后将XML 转换为{{ page.file_format }}文件也很有用。这两个操作都可以通过{{ page.file_format }}端口来完成。

更多关于{{ page.file_format }}转换为XML 的信息,请参考[{{ page.file_format }}转XML](#converting-{{ page.file_format_lowercase }}-to-xml)部分;将XML 转换为{{ page.file_format }}的详细信息,请参考[XML转 {{ page.file_format }}](#converting-xml-to-{{ page.file_format_lowercase }})部分。

端口配置

本节包含所有可配置的端口属性。

设置

{{ page.file_format }} 设置

与端口核心操作相关的设置

{:.table} * 第一行作为标题信息 {{ page.file_format }} 文件是否包含一行标题,这些标题将为文件中的值提供名称或上下文。 * 记录名称 转换为XML 时,{{ page.file_format }}文件中的行名称。更多详细信息,请参考[{{ page.file_format }}转 XML](#converting-{{ page.file_format_lowercase }}-to-xml)。 {% include_relative common_settings_localfolders_local_connectors.md %}

其他设置

先前类别中未包含的设置。

{:.table} {% include_relative common_settings_other_noheader.md %}

自动化

与端口自动处理有关的设置。

{:.table} * 发送 是否自动处理到达此端口的消息。 WQ

{{ page.file_format }}转XML

当{{ page.file_format }}文件转换为XML, 得到的XML 将包含以下结构:

<Items> 
 <Record> 
 <field_0></field_0> 
 <field_1></field_1> 
 <field_2></field_2> 
 </Record> 
</Items> 

原始文件中的每一行(记录)都成为根节点”Items”的子级。所有记录的名称由记录名称设置。然后,记录中的元素都与输入文件中每一行行的元素值对应。

某些 {{ page.file_format }} 文件包含一行标题信息,这些标题信息为文件中的值提供了上下文。 启用第一行作为标题信息设置后,将解析此标题行,解析标题 并将其作为各个值的名称。 否则,将为每个值指定通用名称,如 field_0, field_1等。

XML转{{ page.file_format }}

要将XML 转换为{{ page.file_format }}文件, 输入的XML 必须具有扁平化结构。这意味着,不管根元素如何,XML 结构的深度都是2。例如:

<Items> 
 <film> 
 <title>Citizen Kane</title> 
 <year>1941</year> 
 <runtime>119</runtime> 
 </film> 
 <film> 
 <title>Sharknado</title> 
 <year>2013</year> 
 <runtime>86</runtime> 
 </film> 
</Items> 

XML 将被作如下解析:将根元素的子级视为结果文件中的记录(行),并将每个记录节点的子级视为每一行中的值。如果启用了第一行作为标题信息的设置,则会将标题行与每个值的名称一起插入到生成的{{ page.file_format }}文件中,以提供值的上下文。在上面的示例中,此标题行将由title, year, 和 runtime组成。

{{ page.file_format }} 转换:使用XML Map端口

许多数据转换工作流将{{ page.file_format }} 端口与 XML Map 端口结合使用。

通常,数据以{{ page.file_format }}格式进入工作流,并要求退出工作流是其他某种格式(例如,数据库插入,EDI文件,插入到CRM或ERP数据源插入等),反之亦然。知行之桥使用一种简化的方法来满足这些数据转换的要求:

  • 将输入格式建模为XML
  • 将输出格式健模为XML
  • 使用XML Map端口在输入XML 和输出XML 之间进行映射

因此,{{ page.file_format }}端口常与工作流中的XML Map端口相邻:

当{{ page.file_format }}文件是工作流的输入时,{{ page.file_format }}端口将{{ page.file_format }}文件转换为XML, 然后将该XML 传送给XML Map端口进行转换。当{{ page.file_format }}文件是工作流的输出时,{{ page.file_format }}端口从XML Map端口接收XML 并将其转换为{{ page.file_format }}文件。

{{ page.file_format }} 端口包含 上传测试文件 功能,可以简化{{ page.file_format }}文件的XML 映射过程。

上传测试文件

XML Map端口要求映射的源/输入和映射的目标/输出与示例的XML结构一致。 Upload Test File 功能使利用{{ page.file_format }}端口生成源和目标XML 模板变得更便捷。

在{{ page.file_format }}端口的输入设置中, More下拉列表中包含 Upload Test File 选项. 选择此选项,然后浏览磁盘上的示例{{ page.file_format }} 文件,指定端口生成示例文件的XML 结构。

然后,当XML Map端口连接到工作流中的{{ page.file_format }}端口时(工作流已修改并保存), XML Map可以检测到其内部的XML 结构并将其作为源文件(如果{{ page.file_format }} 端口在工作流中处于XML Map端口之前)或目标文件(如果{{ page.file_format }}端口在工作流中处于XML Map端口之后)。

请注意,此测试文件中的结构应该代表未来所有文件。换句话说,{{ page.file_format }}端口(然后是XML Map端口) 处理的所有{{ page.file_format }}文件都应和所选测试文件的列相同。可能需要设置多个{{ page.file_format }} 端口和多个XML Map端口来处理不同的{{ page.file_format }}结构。

[Share] CSV/PSV/TSV与XML互相转换​www.kasoftware.com

357ef4a3eb8f8dff69bef81422166377.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值